任务列表储存在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多进程不间断执行任务相关推荐

  1. python编程基础_月隐学python第2课

    python编程基础_月隐学python第2课 学习目标 掌握变量的输入和输出 掌握数据类型的基本概念 掌握算数运算 1.变量的输入和输出 1.1 变量输入 使用input输入 input用于输入数据 ...

  2. 查看Python的版本_查看当前安装Python的版本

    一.查看Python的版本_查看当前安装Python的版本 具体方法: 首先按[win+r]组合键打开运行: 然后输入cmd,点击[确定]: 最后执行[python --version]命令即可. 特 ...

  3. 六星教育python怎么样_怎么样才能学好Python?六星教育把最简单的方法告诉你

    原标题:怎么样才能学好Python?六星教育把最简单的方法告诉你 现在python这门课程,在国内的部分学校已经进行了一定的课程学习.随着互联网发展,企业对python人才的需求达到一定的程度,同时P ...

  4. python新手难点_初学两天python的操作难点总结

    已经学习两天python,将我认为的操作难点进行总结 1 在cmd下 盘与盘之间的切换 直接 D或d: 就好 2 查找当前盘或者文件下面的目录 直接 dir 3 想在一个盘下进去一个文件夹,用cd空格 ...

  5. python 运算符重载_零基础小白Python入门必看:面向对象之典型魔术方法

    魔术方法 查看类的魔术方法 class A: passdir(A) # 可以得到类所有公有成员复制代码 输出结果如下 ['__class__', '__delattr__', '__dict__', ...

  6. python创建线程_多种方法实现 python 线程池

    最近在做一个爬虫相关的项目,单线程的整站爬虫,耗时真的不是一般的巨大,运行一次也是心累,,,所以,要想实现整站爬虫,多线程是不可避免的,那么python多线程又应该怎样实现呢?这里主要要几个问题(关于 ...

  7. python asyncio理解_我实在不懂Python的Asyncio

    这是Flask,Sentry的作者Armin Ronacher的一篇博客,这篇文章的影响很大,后来asyncio的文档重写就是受这篇文章影响.这篇文章写于2016.10.30.而Asyncio的一个重 ...

  8. python opencv手册_教你用Python实现5毛钱特效(给你的视频来点料)

    一.前言 请务必看到最后.Python牛已经不是一天两天的事了,但是我开始也没想到,Python能这么牛.前段时间接触了一个批量抠图的模型库,而后在一些视频中找到灵感,觉得应该可以通过抠图的方式,给视 ...

  9. python gis库_使用开放的python库自动化GIS和遥感工作流

    python gis库 Over my career I've worked on many geospatial related projects using the ArcGIS platform ...

最新文章

  1. 【智力题】国际象棋问题
  2. eclipse中查看java源代码设置方法
  3. python怎么知道用哪个库使用-Python链接数据库,使用哪个库,怎么操作?
  4. idea验证失败_SVN提示https证书验证失败解决办法
  5. 【Tools】CSDN-markdown编辑器使用说明
  6. java对象引用传递和值传递的一些总结
  7. Django实现微信消息推送
  8. 关于【结合测试票】写法的总结。
  9. 如何画正太分布曲线_python scipy.stats实现各种常见的统计分布
  10. android无线投屏到电视盒子,如何把电脑视频投屏到智能电视/电视盒子上?
  11. 购买计算机键盘,键盘安装步骤是怎样的 怎样选购电脑键盘
  12. 创新思维案列分析——苹果公司
  13. 受贿千万,字节前餐饮主管二审被判6年
  14. Blue Coat让企业在降低风险的同时利用网络应用程序
  15. vue 如何使用md5密码加密
  16. c语言中ifelse语句的例子,ifelse语句例子
  17. A bank is a place that will lend you money if you can prove that you don't need it.
  18. win7防火墙入站规则 出站规则 什么意思
  19. 【分隔结构】动宾分离
  20. 我与CSDN的这十年——笔耕不辍,青春热血

热门文章

  1. 有一个已经排好序的数组,要求输入一个数后,按原来排序的规律将它插入数组中
  2. 关于cocos2dx 3.0 跳转场景
  3. 微信 php 地图定位,微信公众号定位地图位置写入数据库,再显示地图的方法
  4. 力扣:121. 买卖股票的最佳时机 题解
  5. 迷惑新手的IOS开发问题
  6. 浅析服装信息化面前的三座大山
  7. jQuery菜鸟教程02
  8. 2021-2027全球及中国个人防护纺织品行业研究及十四五规划分析报告
  9. 奔跑吧DKY——团队Scrum冲刺阶段-Day 4
  10. 二叉树的简介、特点及二叉树存储结构’