您的位置:首页 > 编程语言 > Python开发

Python笔记之进程和线程

2018-03-07 08:47 253 查看
  对于操作系统来说,一个任务就是一个进程(process),比如打开一个浏览器就是一个进程,打开两个记事本就是两个进程;那么什么是线程呢?我们发现,有些进程不止能做一件事,比如一个word进程可以同时进行打字,拼写检查,打印等事情,也就是一个进程可能要同时运行多个“子任务”,进程内的这些子任务就称为线程(thread)。
  由于每个进程至少要干一件事,所以一个进程至少有一个线程。
  那么操作系统中进程和线程如何实现的呢?
  现在,多核CPU已经非常普及了,但是过去的单核CPU也可以执行多任务,它的执行方式是操作系统轮流让各个任务交替执行,例如任务1执行0.01秒后切换到任务2,执行0.01秒后再切换到下一个任务。表面上看每个任务都是交替执行的,但CPU的执行速度非常快,让我们感觉就像所有任务在同时执行一样。真正的并行执行多任务只能在多核CPU上实现,但由于任务数量远远多于CPU的核心数量,所以每个核心也会执行多个任务。
  我们编写的Python程序都是执行单任务的进程,也就是只有一个线程。如果要同时执行多个任务,有三种模式:多进程模式,多线程模式,多进程+多线程模式(实际中很少采用)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Python 进程和线程