Ci ho messo un po', ma in effetti è possibile leggere, scrivere, rimuovere
ed aggiungere chiavi e valori su un dizionario non locked ed in comune a
diversi thread, indipendentemente dai valori impostati
con sys.setcheckinterval(), o almeno con i valori con cui ho provato e con
diverse
Dimenticavo:
ho provato anche con 8 thread contemporanei, ma la macchina diventa,
ovviamente, un carrettone, fatto girare su una debian unstable:
Python 3.5.1+ (default, Jan 13 2016, 15:09:18)
[GCC 5.3.1 20160101] on del, Threaded
>>> 1
___
ok,
http://pastebin.com/SL4cJ0vv
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python
2016-02-16 10:53 GMT+01:00 alessandro medici :
> L'esempio che hai fatto non è quello che intendevo io
Quale esempio?
http://wiki.news.nic.it/QuotarBene
> : accedi a due voci
> contemporaneamente dello stesso dizionario nello stesso thread. Comunque
> proverò.
>
L'esempio che hai fatto non è quello che intendevo io: accedi a due voci
contemporaneamente dello stesso dizionario nello stesso thread. Comunque
proverò.
In ogni caso a me risulta che Gil rilascia i thread ogni 'gruppo' di
istruzioni bytecode, non ogni singola istruzione. In altre parole
quasi RISOLTO SOLVED
banale, mi sono fatto uno script che testa un dizionario di 10 voci con 8
thread, e che al dizionario gliene fanno di cote e di crude su un quadcore
abbastanza veloce, il tutto per un milione di volte in 60 secondi e la
conclusione è che si: sui dizionari di può fare quel
è bene saperlo. Null'altro :-)
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python
2016-02-12 21:39 GMT+01:00 alessandro medici :
> sui dizionari di può fare quel che si vuole alle ALTRE voci, anche
> distruggerle in altri thread. Python non fa una piega.
Ed e' un bene o un male?
Carlos
--
EZLN ... Para Todos Todo ... Nada para nosotros
2016-02-10 22:28 GMT+01:00 alessandro medici :
> ecco, mi domandavo se sia solo insano o sicuro.
>
Cosa intendi con locked item?
Comunque tieni presente che, quando usi asyncio, normalmente solo un
thread è attivo ogni momento, quindi non hai problemi di accessi
2016-02-11 19:07 GMT+01:00 alessandro medici :
> Intanto grazie mille della risposta cortese e soprattutto davvero molto
> utile in particolare ed in generale.
>
> Peccato solo che manchi il caso dict.__delitem__(item)
>
Vale lo stesso discorso degli altri.
> Si, in
2016-02-11 19:51 GMT+01:00 Manlio Perillo :
> [...]
> Quindi se un thread legge un valore di un dizionario mentre altri ne
> modificano il valore o lo cancellano,
> in linea di massima puoi assumere che le operazioni vengono eseguite
> in modo seriale, una alla volta.
>
Ah. Ho letto e fatto girare codice con tkinter su asyncio. Va bene :-)
Il 11/feb/2016 19:16, "enrico franchi" ha
scritto:
>
> 2016-02-11 18:07 GMT+00:00 alessandro medici
> :
>
>> Si, in effetti uso asyncio in un thread, ma altri thread
In effetti a parte la gui non mi serve. Davvero. E concordo sul giudizio
escrementizio. Epperò vorrei lo stesso trovare la risposta :-)
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python
Intanto grazie mille della risposta cortese e soprattutto davvero molto
utile in particolare ed in generale.
Peccato solo che manchi il caso dict.__delitem__(item)
Si, in effetti uso asyncio in un thread, ma altri thread lavorano al
contempo sugli stessi dizionari e mi risulta che che Gil si
2016-02-11 18:07 GMT+00:00 alessandro medici :
> Si, in effetti uso asyncio in un thread, ma altri thread lavorano al
> contempo sugli stessi dizionari e mi risulta che che Gil si sganci quando
> entra in un thread.
>
Ma hai una buona ragione per andare di
ecco, mi domandavo se sia solo insano o sicuro.
Chiedo venia, ma l'acqua calda questa volta non sono riuscito a trovarla.
A.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python
16 matches
Mail list logo