Conosco le nozioni di base sull'uso delle coroutine come base e sull'implementazione di uno scheduler giocattolo. Ma presumo sia una visione eccessivamente semplificata degli scheduler asincroni. Ci sono un sacco di buchi nei miei pensieri.Come implementare un pratico schedulatore di fibre?
Come mantenere la cpu dall'esecuzione di un pianificatore in esecuzione inattivo/in attesa? Alcune fibre dormono, altre attendono input dal sistema operativo.
libtask sembra carino ma non sembra consentire la pianificazione esplicita dell'utente dell'attività (non sono riuscito a trovare un'API per dare cpu a una particolare attività).Penso che boost :: context abbia un aspetto più generale, e in cima c'è un layer chiamato boost :: fiber che implementa i lock tra diversi task – lurscher