Als «multithreading» getaggte Fragen

Multithreading ist die Fähigkeit eines Computers oder eines Programms, gleichzeitig oder asynchron zu arbeiten, indem mehrere gleichzeitige Ausführungsströme verwendet werden (im Allgemeinen als Threads bezeichnet).



5
Wann ist flüchtig mit Multithreading zu verwenden?
Wenn zwei Threads auf eine globale Variable zugreifen, wird in vielen Tutorials angegeben, dass die Variable flüchtig ist, um zu verhindern, dass der Compiler die Variable in einem Register zwischenspeichert und sie daher nicht korrekt aktualisiert wird. Zwei Threads, die beide auf eine gemeinsam genutzte Variable zugreifen, erfordern Schutz über …

13
Wie lässt man einen Java-Thread auf die Ausgabe eines anderen Threads warten?
Ich mache eine Java-Anwendung mit einem Anwendungslogik-Thread und einem Datenbankzugriffsthread. Beide bleiben während der gesamten Lebensdauer der Anwendung bestehen und müssen gleichzeitig ausgeführt werden (einer spricht mit dem Server, einer mit dem Benutzer; wenn die App vollständig gestartet ist, müssen beide funktionieren). Beim Start muss ich jedoch sicherstellen, dass der …



8
Warum ist Thread.Sleep so schädlich?
Ich sehe oft erwähnt, dass Thread.Sleep();es nicht verwendet werden sollte, aber ich kann nicht verstehen, warum dies so ist. Wenn Thread.Sleep();dies zu Problemen führen kann, gibt es alternative Lösungen mit demselben Ergebnis, die sicher wären? z.B. while(true) { doSomework(); i++; Thread.Sleep(5000); } ein anderer ist: while (true) { string[] images …
128 c#  multithreading  sleep 

15
Wann wird der Thread-Pool in C # verwendet? [geschlossen]
Geschlossen . Diese Frage basiert auf Meinungen . Derzeit werden keine Antworten akzeptiert. Möchten Sie diese Frage verbessern? Aktualisieren Sie die Frage, damit sie durch Bearbeiten dieses Beitrags mit Fakten und Zitaten beantwortet werden kann . Geschlossen vor 2 Jahren . Verbessere diese Frage Ich habe versucht, Multithread-Programmierung in C …


13
Es ist unmöglich, einen zwischengespeicherten Thread-Pool mit einer Größenbeschränkung zu erstellen?
Es scheint unmöglich zu sein, einen zwischengespeicherten Thread-Pool mit einer Begrenzung der Anzahl der Threads zu erstellen, die er erstellen kann. So wird statisches Executors.newCachedThreadPool in der Standard-Java-Bibliothek implementiert: public static ExecutorService newCachedThreadPool() { return new ThreadPoolExecutor(0, Integer.MAX_VALUE, 60L, TimeUnit.SECONDS, new SynchronousQueue<Runnable>()); } Verwenden Sie diese Vorlage, um einen zwischengespeicherten …



3
Unterschied zwischen dispatch_async und dispatch_sync in der seriellen Warteschlange?
Ich habe eine serielle Warteschlange wie folgt erstellt: dispatch_queue_t _serialQueue = dispatch_queue_create("com.example.name", DISPATCH_QUEUE_SERIAL); Was ist der Unterschied zwischen so dispatch_asyncgenannt dispatch_async(_serialQueue, ^{ /* TASK 1 */ }); dispatch_async(_serialQueue, ^{ /* TASK 2 */ }); Und dispatch_syncso in dieser seriellen Warteschlange angerufen? dispatch_sync(_serialQueue, ^{ /* TASK 1 */ }); dispatch_sync(_serialQueue, ^{ …

12
Woher wissen, ob andere Threads beendet sind?
Ich habe ein Objekt mit einer Methode namens StartDownload(), die drei Threads startet. Wie erhalte ich eine Benachrichtigung, wenn die Ausführung jedes Threads abgeschlossen ist? Gibt es eine Möglichkeit festzustellen, ob einer (oder alle) Threads fertig sind oder noch ausgeführt werden?

18
Wie kann ich warten, bis ein BackgroundWorker abbricht?
Stellen Sie sich eine hypothetische Methode eines Objekts vor, das Dinge für Sie erledigt: public class DoesStuff { BackgroundWorker _worker = new BackgroundWorker(); ... public void CancelDoingStuff() { _worker.CancelAsync(); //todo: Figure out a way to wait for BackgroundWorker to be cancelled. } } Wie kann man warten, bis ein BackgroundWorker …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.