我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python 多线程模块threadpo

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python 多线程模块threadpo

  python实现线程池通常使用threading或thread模块来编写,现在已经有了threadpool模块来实现线程池。

英文文档见:http://www.chrisarndt.de/projects/threadpool/

中文文档见:http://gashero.yeax.com/?p=44

现给出一个简易的使用threadpool模块来实现线程池的例子:

 

# -*-coding:utf-8-*-
__author__ = 'magicpwn'
import threadpool
import time, random
# worker 工作函数【多线程中每个线程工作的函数】
def worker_get(str):
    return str
# 回调函数,接受的参数(请求本身,和请求工作函数执行结果)可以省略
def print_result(request, result):
    print "the result is %s %r" % (request.requestID, result)
# data 设置为有20个随机1-10间的整数的列表,(列表中每一个数作为参数传递给工作函数运行一次)
data = [random.randint(1,10) for i in range(20)]
# 声明可容纳五个线程的池
pool = threadpool.ThreadPool(5)
# 创建线程运行内容请求列表(线程工作函数,线程工作参数列表,回调函数)
requests = threadpool.makeRequests(worker_get, data, print_result)
# 将每一个线程请求扔进线程池
[pool.putRequest(req) for req in requests]
# 等待data被消耗完,所有线程运行结束。
pool.wait()

上面的程序用pool.size个线程运行worker_get函数,处理了data.size个数据处理请求。 

本文出自 “Get and Share” 博客,请务必保留此出处http://dgfpeak.blog.51cto.com/195468/861994


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python 多线程模块threadpo

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python 多线程模块threadpo

python实现线程池通常使用threading或thread模块来编写,现在已经有了threadpool模块来实现线程池。英文文档见:http://www.chrisarndt.de/projects/threadpool/中文文档见:h
2023-01-31

多线程编程(3):线程池ThreadPo

在面向对象编程中,经常会面对创建对象和销毁对象的情况,如果不正确处理的话,在短时间内创建大量对象然后执行简单处理之后又要销毁这些刚刚建立的对象,这是一个非常消耗性能的低效行为,所以很多面向对象语言中在内部使用对象池来处理这种情况,以提高性能
2023-01-31

python中thread模块实现多线程

这篇文章将为大家详细讲解有关python中thread模块实现多线程,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,Pyt
2023-06-14

Python 线程池模块之多线程操作代码

1、线程池模块 引入from concurrent.futures import ThreadPoolExecutor2、使用线程池 一个简单的线程池使用案例from concurrent.futures import ThreadPool
2022-06-02

Python多线程中Queue模块怎么用

这篇文章将为大家详细讲解有关Python多线程中Queue模块怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。queue介绍queue是python中的标准库,俗称队列,可以直接import 引用,在
2023-06-20

python thread模块怎么实现多线程

这篇文章主要介绍“python thread模块怎么实现多线程”,在日常操作中,相信很多人在python thread模块怎么实现多线程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”python thread
2023-06-30

Python多线程 Queue 模块常见用法

queue介绍queue是python中的标准库,俗称队列,可以直接import 引用,在python2.x中,模块名为Queue 在python中,多个线程之间的数据是共享的,多个线程进行数据交换的时候,不能够保证数据的安全性和一致性,所
2022-06-02

Python中线程池模块之多线程的示例分析

这篇文章将为大家详细讲解有关Python中线程池模块之多线程的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、线程池模块引入from concurrent.futures import Thre
2023-06-15

Python 多线程threading模

首先,我们在了解多线程时需要理解的就是什么是多线程,按照官方的解释就是:多线程(英语:multithreading),是指从软件或者硬件上实现多个线程并发执行的技术。    在我自学到这里的时候,通过会在想进程和线程到底是有什么区别,我的理
2023-01-31

python3--threading模块(线程)

上章节内容总结:队列 队列:先进先出,数据进程安全 管道+锁 可实现队列 生产者消费者模型:解决数据供需不平衡管道 双向通信 数据进程不安全 EOFError: 管道是由操作系统进行引用计数的 必须在所有进程中
2023-01-30

Python模块整理(五):多进程mul

线程共享全局状态,进程完全独立。线程局限在一个处理器,线程可以发挥多个处理器的资源.没有找到processing模块只找到multiprocessing#!/usr/bin/env pythonfrom multiprocessing im
2023-01-31

python下thread模块创建线程的方法

本篇内容介绍了“python下thread模块创建线程的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!thread方法对创建线程有效且直
2023-06-20

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录