<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">Il giorno 18 maggio 2014 07:14, Marco De Paoli <span dir="ltr"><<a href="mailto:depaolim@gmail.com" target="_blank">depaolim@gmail.com</a>></span> ha scritto:<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
premetto che gli ho dato solo un occhiata e comunque mi manca un po' contesto<br>
(per dirne una, non so a cosa serve il semaphore...)</blockquote><div>dovrebbe servire per evitare che girino contemporaneamente più di N task</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">
> Se ora faccio partire il tutto mi trovo con un output simile a questo:<br>
><br>
> DEBUG 4460 Consumer 2014-05-16 20:00:20,345: Get task task 32<br>
> DEBUG 4460 Consumer 2014-05-16 20:00:20,345: Get task task 3<br>
> DEBUG 4460 Consumer 2014-05-16 20:00:20,345: Get task task 52<br>
> DEBUG 4460 Consumer 2014-05-16 20:00:20,345: Get task task 43<br>
> DEBUG 4460 Consumer 2014-05-16 20:00:20,345: Get task task 27<br>
> DEBUG 4552 task 52 2014-05-16 20:00:20,345: task 52 starting ...<br>
><br>
<br>
> io dichiaro una coda di dimensione 1. Mi aspetto che quando faccio todoQ.put<br>
> questo resti in attesa finché nella coda non si libera un posto invece non<br>
> succede cosi.<br>
<br></div></blockquote><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">
</div>come lo verifichi che non succede così?<br>
voglio dire:<br>
potrebbe essere che i fetch avvengano in rapida successione per cui<br>
effettivamente in ogni momento la coda è (effettivamente) lunga al più<br>
1?</blockquote><div>perché nel esempio ho impostato il numero max di task che possono girare sia 1 e il task ha uno sleep di un secondo. Inoltre i task 32 e 3 io non li vedo mai partire, neanche dopo qualche secondo.</div>
<div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">
> Inoltre dal log sembra che scarichi i task nel seguente ordine<br>
> 32, 3, 52, 43, 27 e cosi via. Mi aspetto che il primo task sia 32, invece è<br>
> 52.<br>
<br>
</div>uhm, chi è precisamente che stampa quelle righe di log?<br>
potrebbe essere che il log non è nello stesso ordine del fetch?<br>
<br></blockquote><div>uso il modulo logging </div></div><div><br></div>-- <br><div dir="ltr">Balan Victor</div>
</div></div>