如何高效使用Python multiprocessing模块实现多进程学习?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1607个文字,预计阅读时间需要7分钟。
多进程的定义+提高效率(增加并发数)+进程是程序一次动态执行的执行过程,包括代码加载、执行、执行完毕退出阶段+进程是系统资源分配的独立单位(最小单位)+进程拥有自己独立的堆栈
多进程的定义
提高效率(增加并发数)
进程是程序一次动态的执行过程,包括代码加载,执行,执行完毕退出阶段
进程是系统资源分配的独立单位(最小单位)
进程拥有自己独立的堆和栈,既不共享堆,亦不共享栈,进程由操作系统调度。
多进程的特性
并发性:任何进程在操作系统中可以同时运行
独立性:资源不共享
异步性:进程和进程之间相互制约,进程运行有间断性
os.fork()
Unix/Linux操作系统提供了一个os.fork()系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后,分别在父进程和子进程内返回。
子进程永远返回0,而父进程返回子进程的ID。这样做的理由是,一个父进程可以fork出很多子进程,所以,父进程要记下每个子进程的ID,而子进程只需要调用os.getppid()就可以拿到父进程的ID。
本文共计1607个文字,预计阅读时间需要7分钟。
多进程的定义+提高效率(增加并发数)+进程是程序一次动态执行的执行过程,包括代码加载、执行、执行完毕退出阶段+进程是系统资源分配的独立单位(最小单位)+进程拥有自己独立的堆栈
多进程的定义
提高效率(增加并发数)
进程是程序一次动态的执行过程,包括代码加载,执行,执行完毕退出阶段
进程是系统资源分配的独立单位(最小单位)
进程拥有自己独立的堆和栈,既不共享堆,亦不共享栈,进程由操作系统调度。
多进程的特性
并发性:任何进程在操作系统中可以同时运行
独立性:资源不共享
异步性:进程和进程之间相互制约,进程运行有间断性
os.fork()
Unix/Linux操作系统提供了一个os.fork()系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后,分别在父进程和子进程内返回。
子进程永远返回0,而父进程返回子进程的ID。这样做的理由是,一个父进程可以fork出很多子进程,所以,父进程要记下每个子进程的ID,而子进程只需要调用os.getppid()就可以拿到父进程的ID。

