怎么让python一直执行_怎么才能让Python多进程不间断执行任务
任务列表储存在mongoDB中 大概三百万条
每个任务执行结束会标记上
现在有个问题
每次脚本开始时读取100任务
用python多进程执行任务时 必须等待所有进程执行结束才能重新读取下一个100条
有没有什么办法让结束的进程不间断去领取新的任务?
创建进程的片段
#!/usr/bin/python
# coding=utf-8
from urllib2 import Request, urlopen, URLError, HTTPError
from multiprocessing import Pool
import os
import sys
task_list = [] # 任务列表
def start_run(i, task_list):
print "进程"+str(i)+"开始"
# 处理task_list任务列表
print "进程"+str(i)+"结束"
if __name__ == '__main__':
print 'Parent process %s.' % os.getpid()
p = Pool(number_of_processes)
for i in xrange(number_of_tasks):
i += 1 # 从1开始
p.apply_async(start_run, args=(i,task_list))
p.close()
p.join()
print 'All subprocesses done.'
拜谢
使用Queue作为数据管道, 在run函数中读取并处理数据;
可以考虑进程不关闭,在进程中读取、处理数据,做循环。
使用celery消息队列
怎么让python一直执行_怎么才能让Python多进程不间断执行任务相关推荐
- python编程基础_月隐学python第2课
python编程基础_月隐学python第2课 学习目标 掌握变量的输入和输出 掌握数据类型的基本概念 掌握算数运算 1.变量的输入和输出 1.1 变量输入 使用input输入 input用于输入数据 ...
- 查看Python的版本_查看当前安装Python的版本
一.查看Python的版本_查看当前安装Python的版本 具体方法: 首先按[win+r]组合键打开运行: 然后输入cmd,点击[确定]: 最后执行[python --version]命令即可. 特 ...
- 六星教育python怎么样_怎么样才能学好Python?六星教育把最简单的方法告诉你
原标题:怎么样才能学好Python?六星教育把最简单的方法告诉你 现在python这门课程,在国内的部分学校已经进行了一定的课程学习.随着互联网发展,企业对python人才的需求达到一定的程度,同时P ...
- python新手难点_初学两天python的操作难点总结
已经学习两天python,将我认为的操作难点进行总结 1 在cmd下 盘与盘之间的切换 直接 D或d: 就好 2 查找当前盘或者文件下面的目录 直接 dir 3 想在一个盘下进去一个文件夹,用cd空格 ...
- python 运算符重载_零基础小白Python入门必看:面向对象之典型魔术方法
魔术方法 查看类的魔术方法 class A: passdir(A) # 可以得到类所有公有成员复制代码 输出结果如下 ['__class__', '__delattr__', '__dict__', ...
- python创建线程_多种方法实现 python 线程池
最近在做一个爬虫相关的项目,单线程的整站爬虫,耗时真的不是一般的巨大,运行一次也是心累,,,所以,要想实现整站爬虫,多线程是不可避免的,那么python多线程又应该怎样实现呢?这里主要要几个问题(关于 ...
- python asyncio理解_我实在不懂Python的Asyncio
这是Flask,Sentry的作者Armin Ronacher的一篇博客,这篇文章的影响很大,后来asyncio的文档重写就是受这篇文章影响.这篇文章写于2016.10.30.而Asyncio的一个重 ...
- python opencv手册_教你用Python实现5毛钱特效(给你的视频来点料)
一.前言 请务必看到最后.Python牛已经不是一天两天的事了,但是我开始也没想到,Python能这么牛.前段时间接触了一个批量抠图的模型库,而后在一些视频中找到灵感,觉得应该可以通过抠图的方式,给视 ...
- python gis库_使用开放的python库自动化GIS和遥感工作流
python gis库 Over my career I've worked on many geospatial related projects using the ArcGIS platform ...
最新文章
- 【智力题】国际象棋问题
- eclipse中查看java源代码设置方法
- python怎么知道用哪个库使用-Python链接数据库,使用哪个库,怎么操作?
- idea验证失败_SVN提示https证书验证失败解决办法
- 【Tools】CSDN-markdown编辑器使用说明
- java对象引用传递和值传递的一些总结
- Django实现微信消息推送
- 关于【结合测试票】写法的总结。
- 如何画正太分布曲线_python scipy.stats实现各种常见的统计分布
- android无线投屏到电视盒子,如何把电脑视频投屏到智能电视/电视盒子上?
- 购买计算机键盘,键盘安装步骤是怎样的 怎样选购电脑键盘
- 创新思维案列分析——苹果公司
- 受贿千万,字节前餐饮主管二审被判6年
- Blue Coat让企业在降低风险的同时利用网络应用程序
- vue 如何使用md5密码加密
- c语言中ifelse语句的例子,ifelse语句例子
- A bank is a place that will lend you money if you can prove that you don't need it.
- win7防火墙入站规则 出站规则 什么意思
- 【分隔结构】动宾分离
- 我与CSDN的这十年——笔耕不辍,青春热血