[Python] list di connessioni

Remo The Last py.remothelast a yahoo.it
Gio 3 Ott 2013 16:26:48 CEST



ciao a tutta la lista.

Dovrei creare una serie di connessioni all'interno di un loop. Per esempio telnetlib, ma vanno bene anche dei socket qualunque.

Ogni volta che stabilisco una connessione questa viene inviata ad un thread che fa il suo lavoro.
Il problema che mi si pone è come chiamare ogni connessione con un nome differente in modo chenon abbia successivamente difficoltà a gestirle all'interno dei threads.

1° listato funzionante
contatore = 0

while contatore <= 10:
    conn = telnetlib.Telnet(address,23,3)
    contatore += 1
    ...

E' ovvio che non posso chiamare dieci connessioni tutte con il nome 'conn'. E' sbagliato!
(naturalmente 'address' è differente ad ogni iterazione del while sennò rischio un auto-DoS)
2° listato che mi si impalla

conn = []
contatore = 0
while contatore <= 10:
    conn[contatore] = telnetlib.Telnet(address,23,7)
    contatore += 1

    ...


Come suddetto, successivamente, per ogni connessione, viene lanciato un thread e che si porta come parametro conn | conn[contatore] e il thread fa il suo lavoro.


Domande: 

1. posso creare 10 connessioni utilizzando sempre conn? Sicuramente no!
2. Perchè mi si impalla il listato due?
3. Come posso creare 10 connessioni all'interno di un loop dando un nome progressivo ad ogni connessione?
4. Posso davvero portarmi la connessione come parametro per il thread o c'è un limite?
5. Che altre soluzioni posso adottare?


grazie.
py.Re
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20131003/4ec4942f/attachment-0001.html>


Maggiori informazioni sulla lista Python