So implementieren Sie Multi-Threading in Visual Basic 6.0. Es wäre großartig, wenn jemand ein Beispiel geben könnte.Multithreading in Visual Basic 6.0
Antwort
VB6 ist keine wirklich gute Umgebung für Multi-Thread-Anwendungen. Es gibt keine Standard-Unterstützung, Sie müssen sich in die Standardfunktionen WinAPI einarbeiten. Werfen Sie einen Blick auf diese Artikel, die ganz eine umfassende Probe stellt:
Bei mehreren Projekten, die ich mehrere Prozesse asynchrone Verarbeitung in VB6 implementiert haben. Grundsätzlich ein Worker-Thread innerhalb eines aktiven exe-Projekts, das vom Hauptprozess getrennt ist. Die Worker-EXE kann dann alle erforderlichen Daten übergeben und starten, wodurch ein Ereignis ausgelöst wird, um zu sagen, dass es beendet ist oder Daten für den Hauptprozess vorliegen.
Es ist mehr Ressourcen hungrig (ein zusätzlicher Prozess als ein Thread), aber VB6 läuft in einer Single-Thread-Wohnung und hat keine eingebaute Unterstützung für das Starten neuer Threads.
Wenn Sie wirklich mehrere Threads innerhalb eines Prozesses benötigen, würde ich vorschlagen, mit .net oder VC6 statt VB6 zu suchen.
Wenn das Problem, das Sie lösen möchten, eine lange Berechnung ist und Sie die Benutzeroberfläche ansprechend halten möchten, besteht eine Möglichkeit darin, häufig die DoEvents
-Funktion innerhalb Ihrer langen Berechnung aufzurufen. Auf diese Weise kann Ihr Programm alle Windows-Meldungen verarbeiten, und die Benutzeroberfläche reagiert auf Benutzerbefehle. Sie können auch eine Schaltfläche "Abbrechen" einrichten, um Ihrem Prozess zu signalisieren, dass er beendet werden muss.
Wenn Sie dies tun, müssen Sie vorsichtig sein, alle Steuerelemente zu deaktivieren, die ein Problem verursachen könnten, z. B. den langen Prozess ein zweites Mal nach dem Start auszuführen.
Sie können das Interop Forms Toolkit 2.0 für Multithreading in VB6 verwenden. Mit dem Toolkit können Sie die Vorteile von .NET-Funktionen nutzen, ohne auf ein Upgrade-Pat gezwungen zu werden. Daher können Sie auch .NET-Benutzersteuerelemente als ActiveX-Steuerelemente in VB6 verwenden.
- 1. Visual Basic 6.0 Hash-Funktion
- 2. Dezimal-Datentyp in Visual Basic 6.0
- 3. Visual Basic 6.0 zu VB.NET-Deklaration
- 4. Visual Basic 6.0 Data Layer Codegenerator
- 5. Visual Basic 6.0-Projekt Menü beschädigt
- 6. Visual Basic 6.0 Übergabe nach Wert Referenzunterschied
- 7. Visual Basic 6.0 Übergabe als Referenz Problem
- 8. Unterschied zwischen Visual Basic 6.0 und VBA
- 9. Wie lautet die Operatorrangfolge in Visual Basic 6.0?
- 10. MySQL Beispiel für Visual Basic 6.0 - lesen/schreiben
- 11. Convert Visual Basic 6.0 Typ zu VB.NET 'Struktur'
- 12. Etiketten in Visual Basic
- 13. Casting in Visual Basic?
- 14. Basiert BASIC auf Visual Basic?
- 15. Testabdeckung für Visual Basic-Projekt
- 16. Unterstützt Windows 8.1 die Installation von Visual Studio 6.0 (Visual Basic 6)?
- 17. Multithreading Visual Studio C++
- 18. Visual C++ 6.0 Linkfehler
- 19. Variablen in Visual Basic verstehen
- 20. Auflistungsinitialisierungssyntax in Visual Basic 2008?
- 21. Visual Basic 2010 in Textfeld
- 22. Was entspricht in Visual Basic | =?
- 23. Visual Basic-Code in Excel
- 24. Hex-Wert in Visual Basic
- 25. Eine Zahl in Visual Basic
- 26. Visual Basic LINQ
- 27. Visual Basic Macro Fehler
- 28. Visual Basic LINQ-Fehler
- 29. Visual Basic-Listenfeld
- 30. Visual Basic .NET: Zeitplan