让协程实现检测IO,实现并发python
from gevent import monkey;monkey.patch_all() # 因为该模块常常被使用 因此建议写成一行 from gevent import spawn import time def heng(): print("哼") time.sleep(2) print('哼') def ha(): print('哈') time.sleep(3) print('哈') def heiheihei(): print('嘿嘿嘿') time.sleep(5) print('嘿嘿嘿') start = time.time() g1 = spawn(heng) g2 = spawn(ha) # spawn会检测全部的任务 g3 = spawn(heiheihei) g1.join() g2.join() g3.join() # heng() # ha() print(time.time() - start)
spawn方法会建立能检测io并实现并发任务的协程对象并发
当遇到ip组测未完成会切换其余的协程继续spa
最终时间会在最长的协程所需时间结果多一点些,这一些指的是io切换消耗的时间code