ExpertiDict

Ruby · Avançado · Inglês · Técnico

Fiber scheduler

/ˈfaɪbɚ ˈskɛdʒulɚ/substantivo

Interface do Ruby 3.0 que deixa uma biblioteca, como a gem Async, agendar Fibers sem bloquear a thread: I/O e sleep cedem o controle a outras fibers.

Onde usar

Aparece em concorrência cooperativa de I/O, com a gem async. Serve a programas com muitas conexões simultâneas sem uma thread para cada uma.

Em código

require "async"
Async do |t|
  2.times do |i|
    t.async { sleep 1; puts "tarefa #{i}" }
  end
end  # as duas terminam em ~1s

Exemplos

The fiber scheduler lets sleep yield to other fibers.

O fiber scheduler deixa o sleep ceder a vez a outras fibers.

Ruby only ships the interface, not a scheduler.

O Ruby só traz a interface, não um scheduler.

Cuidado

O Ruby traz só a interface, não um scheduler pronto: é preciso uma implementação, como a gem async. Código de CPU intensiva não ganha nada.

Sinônimos

agendador de fibers

Veja também

Todos os termos de Ruby