while True:
line = fileInfo.readline()
if line:
threadPool.submit(task,line,q,noFile,okFile)
else:
threadPool.shutdown()
isStop = True
noFile.close()
okFile.close()
fileInfo.close()
break
如上代碼,線程池提交任務(wù),默認(rèn)讀到的line為空時(shí)退出while循環(huán),此時(shí)主線程終止,程序退出,調(diào)用shutDown()方法等待線程池中的任務(wù)執(zhí)行完再退出程序,shutDown源碼如下,默認(rèn)等待,可以設(shè)置為不等待
def shutdown(self, wait=True):
with self._shutdown_lock:
self._shutdown = True
self._work_queue.put(None)
if wait:
for t in self._threads:
t.join(sys.maxint)