关于python使用threadpool中的函数单个参数和多个参数用法举例
1.对单个元素的函数使用线程池:
# encoding:utf-8
__author__='xijun.gong'
import threadpool def func(name):
print 'hi {}\n'.format(name) if __name__ == '__main__':
data = ['xijun.gong', 'xijun', 'gxjun']
pool = threadpool.ThreadPool(5)
reqs = threadpool.makeRequests(func, data)
[pool.putRequest(req) for req in reqs]
pool.wait()
结果:
hi xijun.gong
hi xijun
hi gxjun
2.对于多个参数的情况使用方式:
# encoding:utf-8
__author__='xijun.gong'
import threadpool def func(name):
print 'hi {}\n'.format(name) def add(a,b):
print '{0}+{1}={2}'.format(a,b,(a+b))
if __name__ == '__main__':
data = [((index,i),None) for index,i in enumerate(range(1,10,2))]#(index,i)也可以写成[index,i]
pool = threadpool.ThreadPool(5)
reqs = threadpool.makeRequests(add, data)
[pool.putRequest(req) for req in reqs]
pool.wait()
结果:
0+1=1
1+3=4
3+7=10
2+5=7
4+9=13
3.如果我们想不安参数顺序赋值,可以使用这种方式:
# encoding:utf-8
__author__='xijun.gong'
import threadpool def func(name):
print 'hi {}\n'.format(name) def add(a,b):
print '{0}+{1}={2}'.format(a,b,(a+b))
if __name__ == '__main__':
data = [(None,{'b':index,'a':i}) for index,i in enumerate(range(1,10,2))]
pool = threadpool.ThreadPool(5)
reqs = threadpool.makeRequests(add, data)
[pool.putRequest(req) for req in reqs]
pool.wait()
结果:
1+0=1
3+1=4
5+2=7
7+3=10
9+4=13
关于python使用threadpool中的函数单个参数和多个参数用法举例的更多相关文章
- python开发_python中的函数定义
下面是我做的几个用列: #python中的函数定义,使用和传参 def_str = '''\ python中的函数以如下形式声明: def 函数名称([参数1,参数2,参数3......]): 执行语 ...
- python 在机器学习中应用函数
浅述python中argsort()函数的用法 (1).先定义一个array数据 1 import numpy as np 2 x=np.array([1,4,3,-1,6,9]) (2).现在我们可 ...
- python unittest框架中addCleanup函数详解
接上一篇doCleanups说明,这次介绍下另一个很好用的函数:addCleanup 还是老规矩,看官方文档说明: addCleanup(function, *args, **kwargs)¶ Add ...
- python 利用matplotlib中imshow()函数绘图
matplotlib 是python最著名的2D绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图.而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中.通过简单的绘图语 ...
- (转)python类class中_init_函数以及参数self的简单解释
1)_init_函数(方法) #-*- encoding:utf-8 -*- class NewClass(object): def __init__(self,name): print self s ...
- python通过mongoengine中connect函数连接多个数据库
mongoengine支持程序同时连接多个数据库,这些数据库可以位于一个或多个mongo之中,通过alias名称区分不同的连接即可. 可以通过switch_db切换到不同的数据库,进行读写操作,swi ...
- python和numpy中sum()函数的异同
转载:https://blog.csdn.net/amuchena/article/details/89060798和https://www.runoob.com/python/python-func ...
- Python -- 使用模块中的函数
在确定自己不会导入多个同名函数(从不同模块导入)的情况下,你可能不希望在每次调用函数的时候,都要写上模块的名字.那么,可以使用import命令的另外一种形式: >>> from ma ...
- Hibernate中HQL函数汇总及获取当前时间进行比较举例
在很多时候,我们负责的项目中,在数据访问层(DAO层)通常我们会使用sql语句或者hql语句,而在我们使用hql语句拼接时有时会报错,通常的原因是:我们使用了标准的sql语句,开启的确是hiberna ...
随机推荐
- ATM程序设计
package com.arthur.object; import java.util.Scanner; /*** * 简单的ATM存取款程序 1.登陆页面 2.登陆 3.菜单:1,查询,2,存款,3 ...
- Caused by: org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2
异常信息 Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with na ...
- 项目(1)----用户信息管理系统(5)---(剩余jsp界面)
完成剩余jsp界面 首页界面前面我写了,接下来还有就是一个显示所有用户界面 1:注册界面 2:显示所有用户信息界面 1:注册界面 <%@ page language="java&quo ...
- Git使用简单总结
创建版本库git add加入到暂存区git commit -m" "加入到分支 时光机穿梭git satus查看仓库的当前状态git diff file 查看修改内容 版本回退HE ...
- 【python】for循环
>>> exp='welcom to python'>>> for i in exp: print(i,end=' ') w e l c o m t o p y t ...
- Swift3.0 自定义tableView复用cell 的写法,与CollectionViewCell的不同,数据model
Model数据 class HospitalModel: NSObject { //后边不赋值 会报错 var imgurl :String = "" var introducti ...
- python 动态加载类对象
第一步 加载模块 module =__import__("modulename",fromlist=['']) 第二部 加载类对象 cls = getattr(module, & ...
- 修改Linux内核参数提高Nginx服务器并发性能
当linux下Nginx达到并发数很高,TCP TIME_WAIT套接字数量经常达到两.三万,这样服务器很容易被拖死.事实上,我们可以简单的通过修改Linux内核参数,可以减少Nginx服务器 的TI ...
- LAMP第一部分-环境搭建
1. 安装mysqlcd /usr/local/src/ wget http://syslab.comsenz.com/downloads/linux/mysql-5.1.40-linux-i686- ...
- 第三节 - centos 内核启动、救援模式、 ls 、目录结构
Linux 第三节一.CentOS 启动: 1.内核引导: 1.win/linux 通电,2.BISO自检(CPU,内存,硬盘等 | U盘.光驱.网卡.硬盘启动 通过MBR知道内核内存硬件驱动位置并加 ...