背景
jupyter notebook是以ipython为内核的,在编写程序的时候,经常遇到有些高IO的函数在后台运行半天,但是又需要在它运行的时候执行别的任务,因此这就用到了多线程。
其实ipython 已经封装好了多线程工具,只需要调用即可执行
简单使用
from IPython.lib import backgroundjobs as bg
from time import sleep
jobs = bg.BackgroundJobManager()
def func1():
sleep(1000000)
return 1
# 创建任务
jobs.new(func1)
# 任务状态
jobs.status()
# Running jobs:
# 0 : <function func1 at 0x7fae1b670c80>
# 执行结果
result=jobs.result(0)
官方代码
- 版权声明:本文为 m2kar 的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
- 作者: m2kar
- 打赏链接: 欢迎打赏m2kar
- 邮箱: m2kar.cn#gmail.com
- 主页: m2kar.cn
- Github: github.com/m2kar
- CSDN: M2kar的专栏