Ruby Language Sémantique de fil de base


Exemple

Un nouveau thread séparé de l'exécution du thread principal peut être créé à l'aide de Thread.new .

thr = Thread.new {
  sleep 1 # 1 second sleep of sub thread
  puts "Whats the big deal"
}

Cela démarrera automatiquement l'exécution du nouveau thread.

Pour geler l'exécution du thread principal, jusqu'à ce que le nouveau thread s'arrête, utilisez join :

thr.join #=> ... "Whats the big deal"

Notez que le thread peut déjà être terminé lorsque vous appelez join, auquel cas l'exécution se poursuivra normalement. Si un sous-thread n'est jamais joint et que le thread principal se termine, le sous-thread n'exécutera aucun code restant.