Desidero qualcosa di simile a executor.map
, tranne quando eseguo iterazioni sui risultati, voglio eseguirne l'iterazione in base all'ordine di completamento, ad es. l'elemento di lavoro che è stato completato per primo dovrebbe apparire prima nell'iterazione, ecc. In questo modo l'iterazione bloccherà se non è ancora finito ogni singolo elemento di lavoro nella sequenza.`concurrent.futures` di Python: Iterate su futures in base all'ordine di completamento
So come implementarlo da solo utilizzando le code, ma mi chiedo se sia possibile utilizzare il framework futures
.
(Io per lo più usati esecutori filo-based, quindi mi piacerebbe una risposta che si applica a questi, ma una risposta generale sarebbe il benvenuto pure.)
AGGIORNAMENTO: Grazie per le risposte! Puoi spiegare come posso usare as_completed
con executor.map
? executor.map
è lo strumento più utile e conciso per me quando utilizzo i future e sarei riluttante a iniziare a utilizzare gli oggetti Future
manualmente.
Sei fortunato! – damzam