Ich arbeite mit Windows 10 mit Codeblocks und gcc 7.2 und ich kann C++ 11 oder C++ 14 verwenden. Wenn möglich ohne externe Bibliotheken (Boost). Ich habe ein Programm, das Hunderte von Millionen Feldern bearbeitet. Es ist ein Konzeptbeweis, also brauche ich keine komplizierte Fehlerbehandlung. Ich brauche Einfachheit und Leistung. Die Felder sind einem Puffer aus Bits zugeordnet, der mehr als 500 MB erreichen kann, und ich möchte die Verwaltung des Puffers in einen isolierten Thread einfügen. Der Konstruktor oder die Initialisierung würde die Erstellung eines Vektors vornehmen, die Destruktor- oder Endfunktion würde den Puffer mit Statistik auf die Platte schreiben, und die Funktion, die millionenfach aufgerufen wird, macht nur einen Kalkül und setzt die Bits. Ich muss diese Funktion asynchron vom Hauptprogramm aufrufen und brauche keine Daten zurückzugeben. Nur um die Bits zu setzen und wenn es Fehler gibt, kann ich lesen, als wenn die Verarbeitung endet, wenn es sonst kompliziert ist. Das Hauptprogramm kann in 2 oder 4 Threads repliziert werden, die auf die gleiche Funktion zugreifen. Ich schätze Anleitung für den asynchronen Aufruf dieser Funktion. Vielen Dank.Asynchrone Thread
-2
A
Antwort
-1
Entschuldigung für mein Englisch. Die Frage besteht darin, millionenfach mit einem Thread zu kommunizieren, ohne das Hauptprogramm zu blockieren und ohne CPU zu verbrauchen, wenn der Thread keine Arbeit zu erledigen hat. Und mit guter Leistung, weil der Programmcode sehr kurz ist, aber oft ausgeführt wird.
Verwandte Themen
- 1. Jersey asynchrone Multi-Thread-Antwort?
- 2. Need eine thread-sichere asynchrone Nachrichtenwarteschlange
- 3. Wie vermeidet man mehrere asynchrone Thread-Aufrufe?
- 4. Set Python Pub/Sub-asynchrone Pull-Abonnenten Thread-Anzahl
- 5. Führen Sie asynchrone Tasks über Subprozess ohne Thread-Blockierung aus.
- 6. Wie schreibe ich asynchrone Thread-Klassen in iOS?
- 7. Wie asynchrone Methode innerhalb von Java-Thread aufrufen?
- 8. Mehrere asynchrone Aufrufe von UI-Thread zur Aktualisierung von Textblock
- 9. Warum blockiert dieser asynchrone Einheitentest den Thread für immer?
- 10. Eclipse Debugging hat Dialogfeld: Ausnahme Verarbeitung asynchrone Thread-Warteschlange java.lang.NullPointerException
- 11. Die asynchrone Methode startet AsyncCallback im aktuellen Thread (Hauptthread)
- 12. Den Überblick über asynchrone Belastung und Thread-Sicherheit behalten?
- 13. Asynchrone Anfrage an den Server von Hintergrund Thread
- 14. Konfigurieren eines Thread-Pools für Spring Boot asynchrone TaskExecutors?
- 15. Asynchrone Prozeduraufrufe
- 16. Servlet 3.0 asynchrone
- 17. asynchrone subprocess mit Timeout
- 18. asynchrone
- 19. Schlaf eine asynchrone Aufgabe
- 20. Asynchrone Programmierung in Grails
- 21. WPF: Asynchrone Fortschrittsbalken
- 22. Asynchrone Operation in Realm-Xamarin
- 23. wso2bps 3.6.0 asynchrone Aufgaben
- 24. Asynchrone Programmierung in .Net Konsolenanwendung
- 25. Asynchrone Threads in Standard C++
- 26. Überlappende asynchrone Codeausführung verhindern
- 27. Implementieren asynchrone Nachrichtenwarteschlange in Java
- 28. Asynchrone E/A - Java
- 29. qt asynchrone Clients Antwort gsoap
- 30. asynchrone void Eventhandler - Klärung?
Well C++ 11 und später unterstützt [std :: thread] (http://en.cppreference.com/w/cpp/thread/thread) –
habe ich es und es funktioniert ok. Wie kann ich asynchron in einer Art und Weise anrufen, die den Thread verwendet, den ich ohne Futures will, weil ich das Hauptprogramm nicht blockieren will und keine Antwort zurück zum Haupt habe? –
Sie können sich auf diese Antwort beziehen: https://stackoverflow.com/questions/10890242/get-the-status-of-a-stdfuture – Frank