2010-10-18 9 views

Répondre

6

Si vous pouvez mettre la main sur une copie de Advanced Visual Basic 6: Power Techniques for Everyday Programs par Matthew Courlande, il était un nombre important de pages expliquant comment faire du multi-threading dans VB6.

Vous pouvez également consulter le livre en ligne sur Scribd:

Advanced Visual Basic 6 Power Techniques for Everyday Programs - Scribd

Chapitre 13 est le chapitre sur le filetage VB6.

+0

+1 excellent livre si vous avez besoin de telles choses. Je l'ai utilisé comme base pour une application de traitement d'image multithread VB6 qui fonctionnait comme un service de retour dans la journée. C'était difficile de le faire fonctionner, mais c'était stable une fois que nous avons réglé les choses. – DarinH

3

Vous pouvez en théorie, mais ce n'est pas joli et c'est plus comme la simulation que le multithreading réel.

facile multithread en VB (Mise à jour) http://www.pscode.com/vb/scripts/ShowCode.asp?txtCodeId=31786&lngWId=1

Facile, Coffre-fort multithreading en VB6 avec de bas frais généraux - Partie 2 http://www.pscode.com/vb/scripts/ShowCode.asp?txtCodeId=24747&lngWId=1

+0

C'est juste pour faire savoir aux autres que ces codes n'ont pas fonctionné, au moins pour moi. Le code dans le premier lien s'est simplement écrasé quand deux appels sont faits à 'SHCreateThread Address de myNewThread, ByVal 0 &, CTF_INSIST, ByVal 0 &'. Le code dans le deuxième lien se bloque à 'WaitForSingleObject m_EventHandle, INFINITE' même pour un seul thread. – bjan

4

question connexe: To use thread in programming in vb6

tutoriel Threading sur VB6: http://www.freevbcode.com/ShowCode.Asp?ID=1287#The CreateThread API

Notez que beaucoup de tutoriel ci-dessus est à peu près à quel point il est dangereux d'utiliser effectivement CreateThread dans VB6; VB6 ne tiendra pas la main pour vous empêcher de faire quelque chose de vraiment dangereux et de casser votre programme, parce que VB6 est inconscient des threads. En fait, l'objectif de l'auteur est de vous faire peur à partir du threading dans VB6 en raison de la quantité de choses que vous pouvez faire avec.

Il est beaucoup plus sûr d'utiliser simplement des EXE ActiveX dans des threads séparés. VB6 supporte cela. Voir la question connexe pour la discussion de ceci.

+1

+1 L'approche ActiveX Exe a beaucoup à recommander. Plug impudique: j'ai écrit à ce sujet dans cette réponse à une autre question de filetage. http://stackoverflow.com/questions/727386/making-a-c-kill-event-for-a-vb6-app/752841#752841 – MarkJ