async 队列性能测试

举报
风吹稻花香 发表于 2021/06/05 01:20:08 2021/06/05
【摘要】 性能测试,与多进程对比,效率基本一样: #coding=utf-8import asyncioimport osimport cv2import timeasync def consumer(cons_index, q): print('consumer {}: starting'.format(cons_index)) start=time.time() i=0 whil...

性能测试,与多进程对比,效率基本一样:


  
  1. #coding=utf-8
  2. import asyncio
  3. import os
  4. import cv2
  5. import time
  6. async def consumer(cons_index, q):
  7. print('consumer {}: starting'.format(cons_index))
  8. start=time.time()
  9. i=0
  10. while True:
  11. item = await q.get()
  12. # print('consumer {}: get {}'.format(n, item))
  13. if item is None:
  14. # None is the signal to stop.
  15. q.task_done()
  16. break
  17. else:
  18. print('get', cons_index, item[0],i,item[1].shape,time.time()-start)
  19. i+=1
  20. start = time.time()
  21. await asyncio.sleep(0.001)
  22. q.task_done()
  23. print('consumer {}: ending'.format(cons_index))
  24. async def producer(q, num_workers):
  25. # Add some numbers to the queue to simulate jobs
  26. paths=r'D:\data\VOCdevkit2007\VOC2007\JPEGImages/'
  27. files =os.listdir(paths)
  28. for i,file in enumer

文章来源: blog.csdn.net,作者:网奇,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jacke121/article/details/87898762

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。