Rieccomi :)

Il giorno 20 maggio 2010 23.49, Manlio Perillo <manlio_peri...@libero.it> ha
scritto:

> Per diverse ragioni:
>
> 1) Di solito le applicazioni sono I/O bound (vedi accesso ai file, alla
>   rete, e database), e le funzioni di I/O, in CPython ed estensioni
>   scritte con in mente il threading, rilasciano il GIL.
>
> 2) Diverse funzioni che sono CPU bound sono scritte in C, ed anche
>   queste rilasciano il GIL.
>   Vedi ad esempio PIL, e numpy.
>

Darò un occhiata ai sorgenti di numpy (li ho già scaricati) per capire
meglio in quali condizioni rilasciano il GIL.
Anche se ad oggi comunque non ho mai avuto personalmente bisogno di usare
moltissime CPU-bound (e quelle poche solo per test) anche per il fatto che
solitamente programmo in ambiente di rete o, come dicevi tu, applicazioni
che fanno uso di funzioni I/O.


> Ovviamente ci sono casi significativi in cui il codice CPU bound è in
> Python puro, ed in questo caso il multiprocessing è la soluzione migliore.
>
Perfetto.

>
>
> Ciao  Manlio
> _______________________________________________
> Python mailing list
> Python@lists.python.it
> http://lists.python.it/mailman/listinfo/python
>


Ciao :) Mille grazie per le delucidazioni,
a presto!

-- 
Alessandro A.
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a