Python学习多进程并发写入同一文件

本文讲述了在学习Python多进程时遇到的问题,即并发写入同一文件导致内容丢失。作者分析了原因在于资源竞争,提出了解决方案——通过回调函数集中写入内容,避免并发冲突。
摘要由CSDN通过智能技术生成

最近学习了Python的多进程,想到我的高德API爬虫那个爬取读写速度我就心累,实在是慢,看到多进程可以充分利用CPU核数我就开始完善我的代码,不过过程是艰辛的,在此之中出现了很多问题,其中最大的问题是爬取的数据是正确的,但是读写到Excel中却打开是空,想了半天也没解决,脑子笨没办法,不过我回想到多进程中不同进程是相互独立即

在多个进程下把数据写入同一文件由于是并发进行操作系统中会不清楚到底要写入哪个数据到文件中,所以会出现资源竞争混乱,导致文件内容出现空,具体思路如下

具体思路跟把文件输出集中在一起也差不多,就是把进程需要写入文件的内容作为返回值返回给惠和的回调函数,使用回调函数向文件中写入内容。

就是这么简单。

apply_async
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值