Er Ruby on Rails flertrådet?
Er Ruby on Rails flertrådet?

Video: Er Ruby on Rails flertrådet?

Video: Er Ruby on Rails flertrådet?
Video: Ruby on Rails by Leila Hofer 2024, November
Anonim

Phusion Passenger bruger procesbaseret samtidighed til at håndtere nogle få anmodninger samtidigt, så strengt taget er det ikke " flertrådet , " men er stadig samtidig. Denne snak fra Rubin MidWest 2011 har nogle gode tanker om at få flertrådet Ruby on Rails går.

På denne måde, understøtter Ruby multithreading?

EN flertrådet programmet har mere end én udførelsestråd. Rubin gør det nemt at skrive flertrådede programmer med trådklassen. Rubin tråde er en let og effektiv måde at opnå samtidighed i din kode.

For det andet, er Ruby samtidig? I særdeleshed, Ruby samtidighed er, når to opgaver kan starte, køre og fuldføre i overlappende tidsperioder. Det betyder dog ikke nødvendigvis, at de nogensinde begge vil køre på samme øjeblik (f.eks. flere tråde på en enkeltkernemaskine).

Ligeledes er Ruby enkeltgevind?

Det korte svar er ja, det er de enkelt gevind . Det lange svar er, at det afhænger af. JRuby er flertrådet og kan køres i tomcat ligesom anden java-kode. MR (standard rubin ) og Python har begge en GIL (Global Interpreter Lock) og er således enkelt gevind.

Har Ruby en Gil?

MR har noget, der kaldes en global tolkelås ( GIL ). Det er en lås omkring udførelsen af Rubin kode. Det betyder, at i en multi-threaded kontekst, kan kun én tråd udføres Rubin kode til enhver tid. Det GIL findes for at beskytte Rubin interne elementer fra racerforhold, der kan ødelægge data.

Anbefalede: