首页 > 解决方案 > 调用 pool.join 时 Python 多进程线程错误或退出代码

问题描述

线程似乎正在工作,我可以向控制台打印一些检查以验证它是否正在运行,但是当它运行时它pool.join()会停顿几秒钟,或者给我这个错误:

in poll pid, sts = os.waitpid(self.pid, flag) KeyboardInterrupt

或者它只是以 0 结束进程并退出代码。我有一整块代码从未被触及。知道是什么导致它在上述错误和过早退出脚本之间循环吗?

if __name__ == '__main__':

    with closing(Pool()) as pool:
       results =  pool.imap_unordered(reddit_search,
              ["wallstreetbets", "finance", "FinancialIndependence", "Investing", "stocks", "pennystocks",
               "robinhoodpennystocks", "wallstreetbetsnew"])  
       pool.close()
       pool.join()


today = date.today()
(pd.DataFrame.from_dict(data=post_dict, orient='index')
     .to_csv('./data/tick_Post_' + str(today) + 'Thread.csv', header=False))

today = date.today()以永远不会被触及的代码开头。

标签: pythonpython-3.xpython-multiprocessingpython-multithreading

解决方案


推荐阅读