<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">Il giorno 20 maggio 2016 16:42, Pietro Battiston <span dir="ltr"><<a href="mailto:ml@pietrobattiston.it" target="_blank">ml@pietrobattiston.it</a>></span> ha scritto:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Il giorno ven, 20/05/2016 alle 16.26 +0200, alessandro medici ha<br>
scritto:<br>
> Il giorno 20 maggio 2016 16:05, Pietro Battiston <ml@pietrobattiston.<br>
> it> ha scritto:<br>
><br>
> >  > >  - "multiprocessing" implica (a meno di eccezioni notevoli)<br>
> > "pickle<br>
> > > > di<br>
> > > > tutto"<br>
> > > ? cioè i dati vengono trasmessi via pickle e non via puntatori?<br>
> > Sure?<br>
> > > O invece non ho capito cosa affermi? Sorry per la mia ignoranza,<br>
> > ma<br>
> > > sono anziano e con i capelli MOLTO grigi. <br>
> Qualche aiuto/commento? Per caso usi pickle per passare copie di<br>
> dati? <br>
<br>
Sorry, mi ero dimenticato di rispondere a questo.<br>
<br>
Non è purtroppo una mia scelta quella di usare pickle, ma parte del<br>
funzionamento di multiprocessing!<br>
Vedi ad esempio<br>
<a href="http://stackoverflow.com/questions/1816958/cant-pickle-type-instancemet
hod-when-using-pythons-multiprocessing-pool-ma" rel="noreferrer" target="_blank">http://stackoverflow.com/questions/1816958/cant-pickle-type-instancemet<br>
hod-when-using-pythons-multiprocessing-pool-ma</a><br>
... (non trovo al momento un riferimento chiaro nella documentazione).</blockquote><div><br></div><div>Visto. Ed ho visto anche gli escamotages.</div><div><br></div><div>E', al solito, una questione di disegno: se hai bisogno di codice che agisca</div><div>veloce: poco da fare. Ma se hai bisogno di codice che re-agisca veloce</div><div>(in altre parole puoi lavorare prima sulle precondizioni ed il codice deve</div><div>solo esser reattivo ad un caso quasi-previsto) una factory del metodo che</div><div>ti serve potrebbe essere una buona soluzione. Capita. In tal caso pickle</div><div>potrebbe implementare solo il puntatore alla classe esterna.</div><div>(ma da andar a vedere se è vero :-)</div><div><br></div><div>Ve ne è un ottimo esempio nell'implementazione di asyncio in 3.4, non ho</div><div>avuto occasione di guardare se han cambiato qualcosa in 3.5.</div><div><br></div><div>Alex</div></div></div></div>