En MRI, le GVL n'autorise qu'un thread Ruby à la fois : les threads ne parallélisent pas le calcul, mais chevauchent l'attente (le GVL se libère pendant l'I/O). La question avant tout : mon goulot est-il de l'attente (threads, async) ou du calcul (Ractors, processus) ? Le piège : des threads sur du CPU, sans avoir mesuré. In MRI, the GVL allows only one Ruby thread at a time: threads don't parallelize computation, but overlap waiting (the GVL releases during I/O). The question before all: is my bottleneck waiting (threads, async) or computing (Ractors, processes)? The trap: threads on CPU, without having measured.
Le premier numéro est libre. Débloque tout The Ruby Loop — tous les volumes, à vie — pour 5 €, paiement unique. The first issue is free. Unlock all of The Ruby Loop — every volume, forever — for €5, one-time.