[Python] Utilizzo di Readline con socket

Manlio Perillo manlio_perillo a libero.it
Ven 1 Feb 2008 11:01:51 CET


De Santis Luca ha scritto:
> [...]
> Scusate fa faccio tante domande, forse pure stupide, non é tanto che 
> sono entrato nel modo di python :)
>  

Nessun problema, e comunque non sono domande banali! Stai usando una 
piattaforma abbastanza particolare.

> Ma non capisco bene come vanno gestiti i thread. Ho letto che 
> praticamente posso crearli semplicemente con la funzione
>  
> thread.start_new_thread(Funzione(Argomenti), ())
>  
> Perņ chi gestisce il cambio di contesto dei thread ? Devo farelo io o lo 
> fa direttamente python ?
>  

Dovrebbe farlo il sistema operativo.
Dovresti leggere nella documentazione se i threads sono implementati 
secondo il modello preemptive o cooperative:
http://en.wikipedia.org/wiki/Preemption_%28computing%29

> Io ho ad esempio chiamo questi deu thread:
>  
> thread.start_new_thread(Listen(PhoneConnection), ())
> thread.start_new_thread(receive_msg(fd), ())
>  

Ah, ma qui sbagli tu :).
In questo modo *prima* esegui la funzione e *poi* passi il valore che 
restituisce a start_new_thread.

Devi fare:
thread.start_new_thread(Listen, PhoneConnection)
thread.start_new_thread(receive_msg, fd)

in modo che le due funzioni vengano eseguite in thread separati.

 > [...]




Manlio Perillo


More information about the Python mailing list