[Python] saluti e prima domanda sulle list comprhension
Enrico Franchi
enrico.franchi a gmail.com
Lun 28 Gen 2008 00:34:20 CET
On Jan 27, 2008, at 11:54 PM, Java wrote:
> Ma perché avete tutto questo astio per i poveri thread?
Ho io non avevo astio con i thread. Finché non ho cominciato a
ragionarci seriamente in ottica non banale.
Al di la di quello che rende 'semplice' un popolare linguaggio di
programmazioni progettato da qualche control freak, il problema è che
il modo più naturale, logico e comodo di lavorare con i thread è un
modello a messaggi/code e *senza* stato condiviso. A questo punto si
che magari scala anche bene[0].
----
[0] su questo ci torniamo poi.
> 3) non può bloccarsi tutto, proprio perché è un thread, al massimo si
> blocca lui e il resto va...
Si, ma non è li il problema, eh.
> almeno così mi ricordo dalla teoria dei thread in generale,
> tipicamente
> un processo è una cosa più pesante
Tipicamente su un sistema progettato male. Su un sistema unix il costo
è paragonabile. Inoltre se devi lanciare tanti processi/thread o ti
chiami Erlang oppure ti conviene andare asincronamente. Sia con
twisted, sia con il 'divertentissimo' poll.
Nota poi che visto e considerato che fai principalmente I/O, senza
dubbio prenderei un modello a processi.
>
> MMM poi quella cosa di twisted mi tenta un casino... mmm mmm vedo se
> ci
> sto dentro come tempi
Sarebbe una gran cosa, ma IMHO non è il caso. Rischi solo di scrivere
codice che il tuo docente non saprà capire. Io non lo conosco (il tuo
docente), ma l'approccio di molti professori di fronte ad una cosa che
uno studente fa e che loro non capiscono è 'è sbagliato/è fatto male'.
Se il tuo professore non rientra in questa categoria, allora
sicuramente Twisted è molto affascinante. Nota poi che per quello che
devi fare tu, devi imparare un infinitesimo di tutto Twisted. Se poi
passa e legge il Presidente, per convincerti, potrebbe pure buttare
giù lo scheletro funzionante in 15 righe :P Ti confesso che sarei
tentato di farlo io (non fosse che è un po' di tempo che non magheggio
con Twisted e non vorrei scriverti un esempio 'vecchio').
Toh, a proposito di vecchie API. Twisted.web è abbastanza vecchio, a
quanto mi dicono dalla regia, sarebbe da passare con twisted.web2
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/525493
More information about the Python
mailing list