背景
刚接触线程池,由于要爬取数量太多,使用线程池来处理会oom,上网查找一番,记录下来解决方法。
代码
修改后的代码
文件位置:C:\Users\用户名\AppData\Local\Programs\Python\Python310\Lib\concurrent\futures\thread.py
# class ThreadPoolExecutor下的init
self._max_workers = max_workers
# super().__init__(max_workers, thread_name_prefix)
self._work_queue = queue.Queue(self._max_workers * 4)
# 队列最大是进程四倍
# self._work_queue = queue.SimpleQueue()