Fibra (informatica)
# Fibra (informatica)

Per fibra in informatica si intende un thread di esecuzione.

In modo simile ai threads, le fibre condividono gli spazi degli indirizzi di memoria; Mentre i thread utilizzano multitasking di tipo prelazionale (pre-emptive), le fibre utilizzano multitasking cooperativi. Una fibra semplifica notevolmente agli sviluppatori il porting delle applicazioni verso sistemi diversi che fanno uso dei threads a livello utente.

Le fibre devono quindi avere accesso alle informazioni di stato, come l'istruzione successiva da eseguire ed i registri del processore. Il thread memorizza queste informazioni per ciascuna delle sue fibre. Il thread stesso, essendo una unità di esecuzione, deve convertirsi in una fibra per tenere separate le sue informazioni di stato da quelle di altre fibre presenti nello stesso contesto, ed attualmente in esecuzione.

Le API di Windows, ad esempio, forzano un thread a trasformarsi in fibra prima di poterne creare altre o di mandarne altre in esecuzione su un processore.

Come per i thread, anche le fibre hanno un'area di memoria privata, chiamata Fiber Local Storage.

