编写完毕的代码,在没有运行的时候,称为程序
正在运行着的代码,就称为进程
进程,除了包含代码以外,还有需要运行的环境等,所以和程序是有区别的
fork( )
Python的os模块封装了常见的系统调用,其中就包括fork,可以在Python程序中轻松创建子进程

当程序执行到os.fork()时,操作系统会创建一个新的进程(子进程),然后复制父进程的所有信息到子进程中
然后父进程和子进程都会从fork()函数中得到一个返回值,在子进程中这个值一定是0,而父进程中是子进程的 id号

多进程修改全局变量

多进程中,每个进程中所有数据(包括全局变量)都各有拥有一份,互不影响
多次fork

进程的创建-multiprocessing

进程池

进程间通信

多线程

死锁

同步应用


生产者与消费者


网友评论