3.13. Oczekiwanie przez zadany odcinek czasu
Problem
Chcemy zawiesić wykonywanie programu lub wątku na zadany odcinek czasu.
Rozwiązanie
Metoda Kernel#sleep
wprowadza wątek w stan zawieszenia na czas określony (w sekundach) przez argument wywołania będący liczbą zmiennopozycyjną.
3.downto(1) { |i| puts "#{i}..."; sleep(1) }; puts "Start!" # 3... # 2... # 1... # Start! Time.new # => Thu Oct 12 19:50:33 Europa Środkowa (czas stand.) 2006 sleep(10) Time.new # => Thu Oct 12 19:50:43 Europa Środkowa (czas stand.) 2006 sleep(1) Time.new # => Thu Oct 12 19:50:44 Europa Środkowa (czas stand.) 2006 # Zawieszenie wątku na ułamek sekundy Time.new.usec # => 343300 sleep(0.1) Time.new.usec # => 449200
Dyskusja
Potrzeba zawieszenia wykonywania ...
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.