Wahrscheinlich liegt der Grund daran, dass Ruby keine "echten" Threads hat. Es hat sogenannte grüne Fäden. Der Ruby-Interpreter kümmert sich um das Planen von Ausführungsthreads, ohne dass zugrundeliegende OS-Threads verwendet werden. Dies macht effektiv Ruby single threaded.
wahrscheinlich, weil es einfach ist, mit der Standardbibliothek "Queue" -Klasse selbst zu rollen.
%Vor%Aber es ist eine gute Frage - ich könnte vorschlagen, es mit Ruby Core zu bringen.
Mein Verdacht wäre, dass ein ThreadPool in C-basierten Implementierungen von Ruby nicht so nützlich wäre. Sie können jeweils nur einen Prozessor mit Ruby Interpreter von Matz oder Yet Another Ruby VM verwenden.
Wenn mehrere Threads auf mehreren Prozessoren ausgeführt werden sollen, müssen Sie stattdessen JRuby verwenden.
Tags und Links ruby threadpool