next up previous contents index
Search Next: Prozesse (schwergewichtig) Up: Einführung in Ruby Previous: Continuations   Contents   Index

Prozesse und Threads

Multitasking: Screwing up several things at once.
???


\epsfig{height=24pt,file=images/ruby.eps}Ruby unterstützt zurzeit nur Interpreter-interne Threads und keine Threads auf Betriebssystemebene. Bei Prozessen ist es dafür genau umgekehrt: Hier gibt es keine Ruby-internen Prozesse, sondern nur die, die das Betriebssystem zur Verfügung stellt.

Damit sind - sogar unter DOS - Threads überall einsetzbar. Threads gehen mit Ressourcen sparsamer um als Prozesse und haben dabei die Möglichkeit, auf gemeinsame Ruby-Objekte zuzugreifen. Ein Nachteil der Ruby-internen Realisierung von Threads ist, dass die gesamte Applikation blockiert wird, wenn eine Low-Level-Funktion einen Thread blockiert.

Obwohl es theoretisch möglich ist, wird man meistens entweder unabhängige Prozesse oder Threads verwenden, nicht aber beides gleichzeitig.



Abschnitte

(C) 2002 by dpunkt.de, Armin Roehrl, Stefan Schmiedl, Clemens Wyss 2002-01-20