[Python] Applicazione multithreading

Manlio Perillo manlio_perillo a libero.it
Lun 19 Mar 2007 12:57:45 CET


A.recca ha scritto:
> Salve a tutta la lista,
> una di queste sere mi sono imbattuto nel visualizzare il codice sorgente 
> di qualche applicazione, e dopo 30 secondi ho deciso di scrivermi già il 
> mio primo programmino.
> Bello anzi bellissimo a dir poco stupendo.
> In 11 righe mi sono evitato un mare di lavoro.
> Ho deciso di creare una nuova applicazione e questa volta ho deciso di 
> creare uno spider che avevo fatto in c# in windows e rifarlo in python e 
> devo dire che tutto funziona alla grande.
> Il mio unico problema sta nel fatto che vorrei velocizzare il programma 
> e quindi renderlo multithreading impostando sempre da riga di comando il 
> numero di thread che vorrei fare. Mi potete dare qualche consiglio???
> 

Quello che vuoi fare è molto complesso.
I suggerimenti che ti sono stati fatti vanno bene se il numero di links 
è fissato alla partenza, ma nel caso di uno spider non è così.

Ci sono 2 processi separati
1) Prendi il contenuto di un pagina web da un buffer A, fai il parsing 
ed inserisci i links in un buffer B
2) Prendi un link dal buffer B, scarica la pagina ed inserisci il 
contenuto nel buffer A.


Magari si possono usare le nuove coroutines di Python 2.5, oppure 
Greenlets o Stackless.



Saluti  Manlio Perillo


Maggiori informazioni sulla lista Python