码迷,mamicode.com
首页 > 其他好文 > 详细

multiprocessing的异步并发

时间:2017-12-12 00:20:32      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:响应时间   main   python   read   结束   append   def   apply   回调   

只是multiprocessing的使用例子,不建议使用多进程的方式,进行并发。最好的方法。是1个进程N个线程的方式(使用的模块是thread和multiprocessing)

def url_req(u):
req_1 = requests.get(u,verify = False)
ResponseTime=float(req_1.elapsed.microseconds)/1000 #响应时间
# print ‘records time: %s‘,%ResponseTime
return "requests results : " + str(ResponseTime)
if __name__ == "__main__":
result = []
#进程数
pool = multiprocessing.Pool(processes = 1)
#循环使用的时候会去进程池pool里面申请一个进程
for i in range(2):
result.append(pool.apply_async(url_req, ("url参数地址",))) #apply_async模块,会比apply模块多个回调函数,同时是异步的
     print(‘你好‘)#同时打印几个结果
pool.close()#执行完close后不会有新的进程加入到pool,join函数等待所有子进程结束
pool.join()#等待进程运行完毕,先调用close函数,否则会出错
#进程的执行结果;从result中读出来打印结果
for res in result:
a = res.get()
print a

multiprocessing的异步并发

标签:响应时间   main   python   read   结束   append   def   apply   回调   

原文地址:http://www.cnblogs.com/xiaoxiao-niao/p/7672590.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!