Was ist in Ruby der Unterschied zwischen Thread # run und Thread # wakup ?
Der RDoc gibt an, dass scheduler nicht mit Thread # wakeup aufgerufen wird, aber was bedeutet das? Ein Beispiel für die Verwendung von wakeup vs run ? Danke.
BEARBEITEN:
Ich sehe, dass Thread # wakup bewirkt, dass der Thread runnable wird , aber was nützt es, wenn es nicht ausgeführt wird, bevor Thread # run wird ausgeführt (was den Thread trotzdem aufweckt)?
Könnte jemand bitte ein Beispiel angeben, wo aufwachen etwas Sinnvolles tut? Aus Neugierde =)
Hier ist ein Beispiel, um zu veranschaulichen, was es bedeutet (Codebeispiel von hier ):
Thread.wakeup
%Vor%Die obige Ausgabe zeigt an, dass der neu erstellte Thread aufgrund des Stoppbefehls inaktiv ist.
%Vor%Diese Ausgabe zeigt an, dass der Thread nicht mehr schläft und ausgeführt werden kann.
%Vor%Jetzt setzt der Thread die Ausführung fort und druckt die Zeichenfolge aus.
%Vor%Thread.run
%Vor%Der Thread wacht nicht nur auf, sondern setzt auch die Ausführung fort und gibt die Zeichenfolge aus.
%Vor%Tags und Links ruby multithreading