当前位置:
首页 > 编程开发 > Python基础教程 >
-
python基础教程之Python—创建进程的三种方式
本站最新发布 Python从入门到精通|Python基础教程
试听地址 https://www.xin3721.com/eschool/pythonxin3721/
试听地址 https://www.xin3721.com/eschool/pythonxin3721/
方式一:os.fork()
- 子进程是从os.fork得到的值,然后赋值开始执行的。即子进程不执行os.fork,从得到的值开始执行。
- 父进程中fork之前的内容子进程同样会复制,但父子进程空间独立,fork之后的修改不会影响到对方。
- 父子进程在执行上互不影响,谁先执行,谁先执行完不确定。
- 父子进程之间相互独立,全局变量,局部变量都互不影响。
- 父进程执行完就结束,子进程会继续执行。主进程不会因为子进程没结束而等待。
- 子进程虽然复制父进程的空间,但是有自己的特性,比如自己的PID,进程PCB,进程栈空间等。
单个fork
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import os, time g_num = 100 ret = os.fork() # 父进程得到的ret的值等于子进程的pid。子进程得到的ret的值等于0。 if ret < 0 : print "---创建一级子进程失败---" elif ret = = 0 : print "---子进程的pid:%d" % os.getpid() g_num + = 1 else : print "---父进程的pid:%d" % os.getpid() while True : time.sleep( 3 ) break print "进程执行完毕" , g_num # 父进程打印结果为:100,子进程打印结果为:101 |
多个fork
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
import os,time # 父进程执行下面的fork ret = os.fork() if ret = = 0 : print ( "--1--" ) # 子进程 else : print ( "--2--" ) # 父进程 # 父子进程都执行下面的fork,即父子进程都创建了子进程,此时共有四个进程 ret = os.fork() if ret = = 0 : print ( "--11--" ) else : print ( "--22--" ) |
栏目列表
最新更新
python基础(27):类成员的修饰符、类的特殊
Python—创建进程的三种方式
Python openpyxl Excel绘制柱形图
Python学习笔记(九)
python基础-面向过程编程
Scrapy_redis主机连接虚拟机的数据库时显示
Scrapy对接Selenium
RabbitMQ消息队列
用python实现对元素的长截图
Python转义字符
.Net Standard(.Net Core)实现获取配置信息
Linux PXE + Kickstart 自动装机
Shell 编程 基础
Shell 编程 条件语句
CentOS8-网卡配置及详解
Linux中LVM逻辑卷管理
1.数码相框-相框框架分析(1)
Ubuntu armhf 版本国内源
Linux中raid磁盘阵列
搭建简易网站
mysql 安装了最新版本8.x版本后的报错:
Mysql空间数据&空间索引(spatial)
如何远程连接SQL Server数据库的图文教程
复制SqlServer数据库的方法
搜索sql语句
sql中返回参数的值
sql中生成查询的模糊匹配字符串
数据定义功能
数据操作功能
将Session值储存于SQL Server中