进程线程不管哪门语言都是一块可以被重视的方向,下面一起学习学习python中的进程,线程
1.进程线程区别
通俗解释:一个程序QQ的运行就是一个进程运行;QQ中打开多个页面互不影响可以同时操作的每个页面的运作就是线程
专业解释:进程-担当系统分配资源(CPU时间,内存)基本单元;线程-程序执行的最小单元
2.进程
1)fork()
2.1.1:介绍
linux可以多进程操作,所以它能实现登录多个QQ;os模块封装了fork()方法能创建一个进程
操作系统会创建一个新的进程,复制父进程所有信息到子进程中;
fork()函数一定会得到一个返回值,子进程中为0,父进程中就是子进程的id号;
父进程要记下每个子进程的ID,而子进程只需要调用getppid()就可以拿到父进程的ID;
getpid():放回当前进程标识;getppid():返回父进程标识
2.1.2:用法
import os rpid = os.fork() if rpid<0: print("fork调用失败。") elif rpid == 0: print("我是子进程(%s),我的父进程是(%s)"%(os.getpid(),os.getppid())) x+=1 else: print("我是父进程(%s),我的子进程是(%s)"%(os.getpid(),rpid)) print("父子进程都可以执行这里的代码") 运行结果: 我是父进程(19360),我的子进程是(19361) 父子进程都可以执行这里的代码 我是子进程(19361),我的父进程是(19360) 父子进程都可以执行这里的代码