Ruby è a filettatura singola?
Ruby è a filettatura singola?

Video: Ruby è a filettatura singola?

Video: Ruby è a filettatura singola?
Video: Omicidio e vendetta nel Medioevo - Alessandro Barbero (Inedito 2020) 2024, Novembre
Anonim

La risposta breve è sì, lo sono filettatura singola . La risposta lunga è dipende. JRuby è multithread e può essere eseguito in Tomcat come altri codici Java. RM (predefinito rubino ) e Python hanno entrambi un GIL (Global Interpreter Lock) e sono quindi filettatura singola.

In questo modo, Ruby on Rails è single threaded?

Di conseguenza, anche se Rotaie stesso è filo -safe dalla versione 2.2, non esiste ancora un buon multi- filettato server per esso sui server Windows. E ottieni i migliori risultati eseguendolo su server *nix usando multi-processo/ separare - filettato modello di concorrenza. Rotaie come un quadro è filo -sicuro. Quindi la risposta è sì!

Successivamente, la domanda è: perché Python è a thread singolo? Questo blocco impedisce l'esecuzione di più thread contemporaneamente nel Pitone interprete. Ogni filo che vuole correre deve aspettare che il GIL venga rilasciato dall'altro filo , il che significa che il tuo multi- Python filettato l'applicazione è in realtà filettatura singola.

Inoltre è stato chiesto, Ruby è multi-thread?

UN multithread il programma ne ha più di uno filo di esecuzione. Rubino rende facile scrivere multi - filettato programmi con Filo classe. Fili di rubino sono un modo leggero ed efficiente per ottenere la concorrenza nel codice.

Ruby ha un Gil?

L'interprete globale Lock MRI ha un Global Interpreter Lock, spesso chiamato il GIL , e avendo una comprensione di alto livello è importante per capire come scriviamo codice multi-thread in Rubino . Fondamentalmente il GIL impedisce il multiplo Rubino thread dall'esecuzione contemporaneamente.

Consigliato: