k3jobq用函数同时处理一系列输入

k3jobq的Python项目详细描述


k3jobq公司

Build StatusPython packageDocumentation StatusPackage

k3jobq用函数同时处理一系列输入

k3jobq是pykit3项目的一个组件:python3工具包集。在

k3jobq是一个管理器来创建当前任务。 它同时处理一系列的输入函数和 所有线程完成后返回::

def add1(args):
    return args + 1

def printarg(args):
    print(args)

k3jobq.run([0, 1, 2], [add1, printarg])
# > 1
# > 2
# > 3

安装

^{pr2}$

概要

#!/usr/bin/env pythonimportk3jobqif__name__=="__main__":defadd1(args):returnargs+1defmulti2(args):returnargs*2defprintarg(args):print(args)k3jobq.run([0,1,2],[add1,printarg])# > 1# > 2# > 3k3jobq.run((0,1,2),[add1,multi2,printarg])# > 2# > 4# > 6# Specify number of threads for each job:# Job 'multi2' uses 1 thread.# This is the same as the above example.k3jobq.run(list(range(3)),[add1,(multi2,1),printarg])# > 2# > 4# > 6# Create 2 threads for job 'multi2':# As there are 2 thread dealing with multi2, output order will not be kept.k3jobq.run(list(range(3)),[add1,(multi2,2),printarg])# Output could be:# > 4# > 2# > 6# Multiple threads with order kept:# keep_order=True to force to keep order even with concurrently running.k3jobq.run(list(range(3)),[add1,(multi2,2),printarg],keep_order=True)# > 2# > 4# > 6# timeout=0.5 specifies that it runs at most 0.5 second.k3jobq.run(list(range(3)),[add1,(multi2,2),printarg],timeout=0.5)# Returning *k3jobq.EmptyRst* stops delivering result to next job:defdrop_even_number(i):ifi%2==0:returnk3jobq.EmptyRstelse:returnik3jobq.run(list(range(10)),[drop_even_number,printarg])# > 1# > 3# > 5# > 7# > 9

作者

张彦波drdr.xp@gmail.com

版权和许可

麻省理工学院执照

版权所有(c)2015张艳波drdr.xp@gmail.com

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java与springhibernate使用2种不同的数据库连接   java如何将txt文件读取到未知大小的ArrayList   java如何在没有XML的情况下,基于Spring的属性在运行时注入不同的服务   Windows 10中的java检测虚拟桌面   java与串口通信不稳定   java导出为CSV文件并在浏览器中打开   java在MediaStore中分离来自SD卡和设备内部内存的图像   java如何让spring jpa自动创建关系/表?   java将文件读取权限设置为安卓中的文件   java构建大型文件的动态查询   当可以通过重写writeObject()和readObject()进行自定义序列化时,java外部化有什么用途?   java在JBoss AS 6中侦听登录事件   java我的Jlabel没有出现   java正则表达式拆分会产生一个额外的空间,使用\\s,但不会删除它   安卓 java。lang.UnsatifiedLinkError:未找到本机方法:创建