Python3中如何实现异步回调函数(callback)的调用过程?
- 内容介绍
- 文章标签
- 相关推荐
本文共计489个文字,预计阅读时间需要2分钟。
少说废话,大家看看代码吧!
废话不多说,大家之家看代码吧!
#异步 ''' 举例: 你喊你朋友吃饭,你朋友正忙, 如果你一直在那等他,等你朋友忙完了,你们一块去。--同步调用 你喊你朋友吃饭,你朋友正忙, 如果你自己做你自己的事,你朋友忙完,找到你,一块去吃饭。--异步调用 ''' # from bs4 import BeautifulSoup from multiprocessing import Process,Pool import os import time #子进程任务 def download(): print('__进程池中的进程——pid=%d,ppid=%d'%(os.getpid(),os.getppid())) for i in range(3): print('--文件--%d'%i) # time.sleep(1) return '下载完成!' #主进程调用回调函数 def alterUser(msg): print("----callback func --pid=%d"%os.getpid()) print(msg) if __name__ == "__main__": p = Pool(3) p.apply_async(func=download,callback=alterUser) #当func执行完毕后,return的东西会给到回调函数callback print("---start----") p.close()#关闭进程池,关闭后,p不再接收新的请求。
本文共计489个文字,预计阅读时间需要2分钟。
少说废话,大家看看代码吧!
废话不多说,大家之家看代码吧!
#异步 ''' 举例: 你喊你朋友吃饭,你朋友正忙, 如果你一直在那等他,等你朋友忙完了,你们一块去。--同步调用 你喊你朋友吃饭,你朋友正忙, 如果你自己做你自己的事,你朋友忙完,找到你,一块去吃饭。--异步调用 ''' # from bs4 import BeautifulSoup from multiprocessing import Process,Pool import os import time #子进程任务 def download(): print('__进程池中的进程——pid=%d,ppid=%d'%(os.getpid(),os.getppid())) for i in range(3): print('--文件--%d'%i) # time.sleep(1) return '下载完成!' #主进程调用回调函数 def alterUser(msg): print("----callback func --pid=%d"%os.getpid()) print(msg) if __name__ == "__main__": p = Pool(3) p.apply_async(func=download,callback=alterUser) #当func执行完毕后,return的东西会给到回调函数callback print("---start----") p.close()#关闭进程池,关闭后,p不再接收新的请求。

