Is Ruby enkeldraad?
Is Ruby enkeldraad?

Video: Is Ruby enkeldraad?

Video: Is Ruby enkeldraad?
Video: Is Ruby on Rails fast? 2024, Mei
Anonim

Die kort antwoord is ja, hulle is enkeldraad . Die lang antwoord is dit hang af. JRuby is veeldraad en kan in tomcat uitgevoer word soos ander java-kode. MRI (verstek robyn ) en Python het albei 'n GIL (Global Interpreter Lock) en is dus enkeldraad.

Is Ruby on Rails op hierdie manier enkeldraad?

As gevolg hiervan, Eventhough Relings self is draad - veilig sedert weergawe 2.2, daar is nog nie 'n goeie multi- skroefdraad bediener daarvoor op Windows-bedieners. En jy kry die beste resultate deur dit op *nix-bedieners te laat loop deur multi-proses/ enkellopend - skroefdraad sameloop model. Relings as 'n raamwerk is draad -veilig. So, die antwoord is ja!

Die vraag is dan hoekom Python enkeldraad is? Hierdie slot verhoed die uitvoering van verskeie drade gelyktydig in die Python tolk. Elkeen draad wat wil hardloop, moet wag dat die GIL deur die ander vrygelaat word draad , wat beteken jou multi- draadpython aansoek is eintlik enkeldraad.

Ook gevra, is Ruby multi-draad?

A veeldraad program het meer as een draad van teregstelling. Ruby maak dit maklik om te skryf veelvuldig - skroefdraad programme met die Draad klas. Ruby drade is 'n liggewig en doeltreffende manier om gelyktydigheid in jou kode te bereik.

Het Ruby 'n Gil?

Die Global Interpreter Lock MRI het 'n Global Interpreter Lock, dikwels genoem die GIL , en het 'n hoë vlak begrip daarvan is belangrik om te verstaan hoe ons multi-threaded kode in skryf Ruby . Basies die GIL voorkom veelvuldige Ruby drade uit te voer op dieselfde tyd.

Aanbeveel: