Ich möchte, dass mein Haupt-Thread bei einem bestimmten Ereignis einen anderen Thread benachrichtigt, aber ohne sich selbst anzuhalten. Der andere Thread ist eine Endlosschleife, und ich brauche es nach jeder Iteration zu warten, bis der Hauptthread es wieder aufwacht.Wie kann ich einen wartenden Thread benachrichtigen, ohne den Haupt-Thread anzuhalten?
Dies scheint das Warte-/Benachrichtigungsmuster auszuschließen, da es den Thread unterbricht, der notify auf dem gemeinsam genutzten Monitor aufruft. Ich habe auch über CyclicBarrier nachgedacht, aber ich möchte nicht, dass der Hauptthread Barrier.await aufruft, und warte, bis der andere Thread Barrier.aait aufruft, weil es lange dauern kann ...
Irgendeine Idee? Vielen Dank !
Irgendwie schreit [Semaphore] (https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Semaphore.html) zu mir: Hintergrundthread Verringerungen Semaphore, wartet, wenn Null, Hauptthread inkrementiert Semaphor. Nein wartet auf den Hauptthread beteiligt. Können Sie näher auf das Problem eingehen? – dhke
Mögliches Duplikat von [Wie pausiere ich Threads korrekt mit wait() und notify()] (http://stackoverflow.com/questions/26764650/how-do-i-pause-threads-properly-with-wait-and -benachrichtigen) – sheepiiHD