Sto vedendo molti usi di sleep 0
nel mio uno dei miei progetti client.sleep 0 ha un significato speciale?
Il codice è simile a questo.
while true
...
...
sleep 0
end
Leggendo alcune della risposta di così simile this sembra che sleep 0
ha una certa importanza.
Quello che voglio sapere ora è che la pianificazione per l'altro thread da eseguire (se sono in attesa di essere eseguiti) durante il periodo di tempo 0
è un lavoro di un VM lang come ruby o python oppure è un lavoro del kernel .
In ordine, Ruby VM è in grado di onorare lo sleep 0
come indicato nel collegamento precedente.
Giusto per chiarire, detto questo, è improbabile che la persona che scrive quel blocco di codice stia davvero cercando di fare ciò che ho descritto, quindi dubito fortemente che queste chiamate di sonno possano essere utili o meno. In effetti, ogni volta che c'è un codice di applicazione rubino con una chiamata a dormire in esso sarei molto propenso a dire che è un odore di codice (anche se non sempre). – photoionized
Ottima risposta. Hai familiarità con [Ruby Cross Reference] (http://rxr.whitequark.org/mri/ident?i=rb_f_sleep)? È un ottimo modo per esplorare la sorgente MRI. –
@Jordan: risorsa eccezionale, sembra abbastanza simile a LXR, grazie per le informazioni! – photoionized