20.7. Ograniczanie liczby wątków z wykorzystaniem ich puli
Problem
Chcemy przetwarzać wiele wątków równolegle, ale niekoniecznie tak, by wszystkie żądania uruchamiały się jednocześnie. Wykorzystanie techniki pokazanej w „20.6. Równoległe uruchamianie bloku kodu dla wielu obiektów” może doprowadzić do utworzenia zbyt wielu wątków działających równocześnie, co w rezultacie spowolni średni czas odpowiedzi. Chcemy ustanowić limit liczby wątków działających równolegle.
Rozwiązanie
Można wykorzystać pulę wątków. Aby napisać serwer internetowy, który zapewnia równoległą obsługę żądań, należy skorzystać z modułu gserver
, tak jak pokazano w „14.14. Implementacja własnego serwera internetowego”: moduł ten implementuje pulę wątków oraz wiele ...
Get Ruby. Receptury now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.