charwel
Messages postés3Date d'inscriptionsamedi 30 décembre 2000StatutMembreDernière intervention22 octobre 2009
-
22 oct. 2009 à 11:53
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
22 oct. 2009 à 19:51
Salut les développeurs.
J'ai réaliser une application qui importe des données a partir une base Sql. La durée d'exécution est long se qui bloque l'application. Mais je ne sais pas comment résoudre ce problème de blocage de mon application.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 22 oct. 2009 à 12:19
Salut
Tout dépend ce que tu fais : Tu ne nous donnes aucune indication.
Si tu demandes à charger une table très lourde dans un RecordSet, pas de mystère, il faut bien que les données soient tranférée de la base vers ton RecordSet, c'est à dire en mémoire.
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Salut
Une piste à exploere
Si pour remplir ta listview tu utilises une boucle quelle qu'elle soit mets un
Application.Doevents() pour permettre au système de reprendre la main
for i = 0 to 10000
Application.Doevents()
' ton code interne à la boucle
Next i
La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 22 oct. 2009 à 19:51
Les insertions sont lentes parce que, peut-être, tu as choisis l'option de tri des items.
Il fait ce tri après chaque insertion.
Avant de commencer, repasse cette option à False, puis remets le après.
Eventuellement, masque l'affichage de la ListView pendant les insertions : Cela gagnera le temps d'affichage, qui prends aussi de la ressource. Pendant ce temps, tu peux afficher un Label (placé sous la ListView) dans lequel tu demandes à l'utilisateur de patienter pendant le rafraichissement.
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)