O Ruby on Rails é multithread?
O Ruby on Rails é multithread?

Vídeo: O Ruby on Rails é multithread?

Vídeo: O Ruby on Rails é multithread?
Vídeo: Multi-Threading and Ruby's Thread Class - Launch School Tech Talks 2024, Maio
Anonim

O Phusion Passenger usa simultaneidade baseada em processos para lidar com algumas solicitações simultaneamente, portanto, estritamente falando, não é " multithread , "mas ainda está concorrente. Esta conversa de Rubi MidWest 2011 tem boas ideias sobre como obter Ruby on Rails multithread indo.

Desta forma, o Ruby suporta multithreading?

UMA multithread programa tem mais de um thread de execução. Rubi torna mais fácil escrever programas multithread com a classe Thread. Rubi threads são uma maneira leve e eficiente de obter simultaneidade em seu código.

Em segundo lugar, Ruby é simultâneo? Em particular, Simultaneidade Ruby é quando duas tarefas podem ser iniciadas, executadas e concluídas em períodos de tempo sobrepostos. Porém, isso não significa necessariamente que os dois estarão em execução ao mesmo tempo (por exemplo, vários threads em uma máquina de núcleo único).

Da mesma forma, Ruby é single threaded?

A resposta curta é sim, eles são single threaded . A longa resposta é que depende. JRuby é multithread e pode ser executado no tomcat como outro código java. Ressonância magnética (padrão rubi ) e Python têm um GIL (Global Interpreter Lock) e são, portanto, single threaded.

Ruby tem um Gil?

Ressonância magnética tem algo chamado de bloqueio de intérprete global ( GIL ) É um bloqueio em torno da execução de Rubi código. Isso significa que em um contexto multi-threaded, apenas um thread pode executar Rubi código a qualquer momento. o GIL existe para proteger Rubi internos de condições de corrida que podem corromper os dados.

Recomendado: