[Tech] pthread

Gianni Bianchini giannibi@firenze.linux.it
Lun 28 Ago 2000 10:25:01 CEST


Il 27/08/00, YuRiX scrisse:

> ebbene quello che mi aspettavo di vedere è un mescolamento dell'esecuzione dei 
> thread, invece una volta che un thread entra nella funzione non ne esce fino 
> a che non ha completato il ciclo.
> quello che non so è se questo comportamento è corretto perchè non ci sono
> funzioni bloccanti oppure se ho sbagliato a scrivere qualcosa....boh!
> a voi la soluzione. 

Tieni presente che i pthread non implementano un meccanismo di
scheduling di tipo preemptive come quello realizzato dal kernel tra
processi diversi (lanciati con il meccanismo fork-exec per
intendersi). Probabilmente non e' sorprendente quello che dici,
infatti il compito che fai eseguire ai thread e' molto "semplice" e
legato quasi esclusivamente alla CPU: quindi si risolve abbastanza
velocemente e non ti permette di apprezzare alcuna granularita'.
Prova a scrivere dei thread che non si limitino a generare numeri
casuali ma facciano qualcosa di piu' sostanzioso come per esempio
dell'I/O pesante su disco o sulla rete e guarda un po'.

Ciao.
Gianni.


 Gianni Bianchini                    | giannibi@firenze.linux.it 
 ---------------------------------------------------------------------------
 "La Teoria e' quando si sa tutto ma non funziona niente; la Pratica e'
 quando tutto funziona ma nessuno sa perche'. Qui da noi, Teoria e Pratica
 si sono fuse: non c'e' niente che funzioni e nessuno ne capisce il motivo."





Maggiori informazioni sulla lista flug-tech