Python

python多线程

2017-09-29  本文已影响22人  一木之夏

python基础之多线程锁机制

GIL(全局解释器锁)

GIL并不是Python的特性,它是在实现Python解析器(CPython)时所引入的一个概念,是为了实现不同线程对共享资源访问的互斥,才引入了GIL

在Cpython解释器中,同一个进程下开启的多线程,同一时刻只能有一个线程执行,无法利用多核优势

# 多线程示例

# 代码:两个函数分别执行4秒和7秒,总共应该耗时11秒,两个线程同时执行时,耗时7秒

输出结果:

多线程同时执行耗时仅7秒

t.start()   启动线程

t.join()    主线程等待t线程结束后才继续执行

不调用t.join()方法的情况: 主线程耗时0秒,直接结束,没有等那两个线程的函数执行完成就结束了进程。


上一篇 下一篇

猜你喜欢

热点阅读