工作8小时之外的努力,才是你超越别人的最好方法
我们今天来简单看一下在Linux/unix下创建的多进程的方法和简单应用,多进程在实际开发中是 非常重要的。可以同时运行多个任务。还是直接上代码:
1 import os
2 import time
3
4 res = os.fork()
5 if res == 0 :
6 while True:
7 time.sleep(2)
8 print("-----1----")
9 else:
10 while True:
11 time.sleep(2)
12 print("------2----")
13
代码中没有写注释,在这我们逐一来看看这一小段代码发生了什么事情?
首先是导入os
,time
这两个包,这个不用多说了,相信大家都明白
关键是在第三行res = os.fork()
在这里我们引用os.fork()
,这个frok
作用就是再创建一个了进程,而原先的程序称为主进程或者父进程,主进程和子进程都会从这句开始执行程序。我们来看一下效果:
python@ubuntu:~/python$ python 0804.py
------2----
-----1----
------2----
-----1----
------2----
-----1----
------2----
-----1----
------2----
-----1----
------2----
-----1----
------2----
其实我们这样看不出来是同时执行,大家运行一下代码就会发出2
和1
是同时被输出到屏幕上的。
接下来我们说一下,主进程和子进程的各自执行的是那段代码。当程序执行到res = os.fork()
的时候,在创建子进程的同时,计算机系统会自动给主进程分配一个大于0的结果,给子进程分配一下小于0的结果,来区分主进程和子进程各执行那段程序代码。更深的内容在学习之后会发布出来,大家一起学习探讨!
网友评论