目录:
一、基础概念
1、多进程
2、进程间通信
3、进程锁
4、进程池
5、协程
a) greenlet
b) Gevent
6、论事件驱动与异步IO
7、IO多路复用
8、Python Select
一、基础概念:
1、多进程multiprocessing
多进程和多线程模块一样,都是一个可以使用一个API产生多个进程的模块,多进程提供了本地与远程的并发,通过使用子进程代替线程,多进程比GIL下的多线程更高效,基于这个原因,多进程模块可以允许开发人员在一个给定的设备上运行多个进程
备注:python多线程不适合cpu密集型操作的任务,适合io密集型操作的任务

from multiprocessing import Process import time def f(name): time.sleep(2) print('hello', name) if __name__ == '__main__': for i in range(10): p = Process(target=f,args=('h_%s' %i, )) #多进程 p.start() p.join() #等待进程结束后才后项执行
显示进程ID

from multiprocessing import Process import os def info(title): print(title) print('module name:' , __name__) print('parent process:' ,os.getppid()) #得到父进程 print('process id: ' , os.getpid()) #得到子进程 print(' ') def f(name): info('