[Python] Utilizzo di Readline con socket
Manlio Perillo
manlio_perillo a libero.it
Mer 30 Gen 2008 12:58:21 CET
De Santis Luca ha scritto:
> Premetto che sto parlando di python per s60
>
> Ho risolto i problemi di bloccaggio del telefono come mi avevate
> consigliato, eliminado i socket globali e li ho passati alle funzioni
> come argomenti e magicamente tutto funziona :)
>
Mi sembra strano...
> Ora però ho un altro problema con l'utilizzo di Readline per leggere i
> dati dai socket, ho questa funzione:
>
> def Listen(PhoneConnection):
> global DebugMode
NOTA: le variabili dovrebbero iniziare con una lettera minuscola.
> try:
> if PhoneConnection:
> print "- Init listen port sevice"
> fd = PhoneConnection.makefile("rw", 0)
> while True:
> TmpInfo=GetPhoneInfo()
>
> ToSend="StatChn:"+str(LastSignal)+";"+str(LastBattery)+";"+str(LastOperator)
> talk(PhoneConnection,ToSend)
> reply = fd.readline()
> ParseCommand(reply)
> except:
> appuifw.note(u"Connection lost", "info")
> if PhoneConnection:
> PhoneConnection.close()
> print "Bye!"
>
>
> La funzione readline() mi blocca lo script fino a che non mando qualcosa
> dal pc tramite la seriale, é normale che si comporti così ?
Si.
readline blocca fino a che non riceve una "linea" completa.
Ma non stavi parlando di socket? Come funziona il collegamento via seriale?
> Pensavavo
> che guardasse il contenuto dela linea e continuava l'esecuzione dello
> script. PhoneConnection passato come arcgomento della funzione Listen é
> il socket
>
Manlio Perillo
More information about the Python
mailing list