python多进程卡死

博客讲述了作者在使用Python多进程时遇到的问题,由于之前使用了协程和线程库,并进行了猴子补丁操作,但在切换到多进程后忘记移除这些,导致程序卡死。解决办法是删除对线程、协程库的引用及猴子补丁。
摘要由CSDN通过智能技术生成

为了提高效率,刚开始用了多线程  threading  和协程  gevent  ,但因为其他原因,后来又取消了线程,改用了多进程,multiprocessing库,代码如下,结果运行时到最后一步卡死了,后来花了三四天才找到原因,原来是用协程时用了猴子补丁monkey patch,但是改用进程时忘记删掉了,导致程序卡死,删掉引用的线程和协程库以及猴子补丁monkey patch就可以正常运行了。

import gevent
from gevent import monkey, pool

monkey.patch_all()
import requests, time, queue, json,os

import multiprocessing


class Baidu:
    def __init__(self):
        self.headers = {
            "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3",
            "Accept-Encoding": "gzip, deflate, br",
            "Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8,ja;q=0.7",
            "Cache-Control": "max-age=0",
            "Connection": "keep-alive",
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值