DoEvents et VB NET - C#/.NET managed - Programmation
Marsh Posté le 13-01-2005 à 12:05:45
ReplyMarsh Posté le 13-01-2005 à 12:12:36
HelloWorld a écrit : Pourquoi dois-tu faire des DoEvents ? |
surement à cause de boucles While consommatrices de temps... dieu sait que j'en ai vu de ce genre de code pourri dans mon ex boite ! pas de threads, donc une grosse boucle While avec un DoEvents pour rendre la main au système de temps en temps
VB6 ne gérant pas les threads, il est probable que Hepil essaie de retranscrire bêtement du VB6 vers .NET, sans chercher à l'exploiter à fond
hepil >> tu es au courant que .NET te permet maintenant de créer des threads ?
Marsh Posté le 13-01-2005 à 12:46:36
je suis en train d'apprendre le VB.NET et ne pense pas le faire bêtement !
maintenant si tu as une bribe d'explication à me donner sur les theads, tu peux profiter du temps que je t'accorde
Marsh Posté le 13-01-2005 à 12:48:26
Harkonnen a écrit : System.Windows.Forms.Application.DoEvents |
merci, j'avais trouvé en même temps cette méthode qui n'est pas forcément la bonne mais qui dépanne temporairement un souci de raffraichissement de valeurs à l'écran
Marsh Posté le 13-01-2005 à 12:52:12
HelloWorld a écrit : Pourquoi dois-tu faire des DoEvents ? |
pour interrompre très temporairemnt une boucle afin que l'affichage des valeurs se mettent à jour
autre solution ?
Marsh Posté le 13-01-2005 à 13:00:58
Hepil a écrit : je suis en train d'apprendre le VB.NET et ne pense pas le faire bêtement ! |
sa majesté est trop bonne
bon bref, je suppose que si tu utilises un DoEvents, c'est parce que tu as une boucle qui effectue un calcul lourd, et qui ne rend pas la main à ton système, avec tous les effets qui s'ensuivent (affichage gelé, souris qui bouge plus, etc...)
le mieux est donc de confier ce calcul à un thread, qui est un processus dans le processus (on parlera de processus léger). le calcul s'effectuera de manière indépendante du reste de ton programme, ne pénalisant pas ton interface. c'est une explication *très simplifiée* hein
regarde donc ici : http://msdn.microsoft.com/library/ [...] eading.asp
Marsh Posté le 13-01-2005 à 11:10:08
hello
Par quoi ont-ils remplacés le Doevents dans vb NET ?