2013-04-17 21 views

risposta

0

In questo caso, probabilmente sarebbe meglio utilizzare un multiprocessing.Process per un'attività a esecuzione prolungata.

Creare uno multiprocessing.Eventprima del avviare il nuovo processo. Chiedere al bambino di controllare regolarmente lo stato di questo Event e farlo uscire quando Event.is_set() restituisce True.

Nel codice della GUI, avere la richiamata associata al pulsante chiama set() su Event.

0

È possibile che si desideri visualizzare la risposta a una domanda StackOverflow correlata here.

In breve, non sembra essere un modo semplice per annullare un processo in esecuzione all'interno di concurrent.futures.ProcessPoolExecutor. Ma puoi farlo in modo hacky uccidendo i processi figli manualmente.

Problemi correlati