python中进程之multiprocessing模块

1、启动进程实现多任务
现代操作系统(windows,Mac OS X ,Linux等)
多任务:操作系统可以运行多个任务
早期的cpu都是单核cpu实现多任务原理:操作系统轮流让各个任务交替执行,任务反复执行下去,但是cpu调度执行太快,导致感觉多有任务都在同时执行
多核cpu执行多任务原理:真正的并行执行多任务只能在多核cpu上实现,但是由于 任务数量远远超过cpu的核心数量,所以操作系统也会自动将很多任务轮流的调度到每个核心上执行
并发:看上去一起执行,任务数多余cpu核心数
并行:真正一起执行,任务书小于等于cpu核心数(效率最高)
实现多任务方式:
1、多进程模式
2、多线程模式
3、协程模式
4、多进程加上多线程模式

进程:
对于操作系统而言一个任务就是一个进程
进程是系统中程序执行和分配的基本单位,每个进程都有自己的数据段,代码段和堆栈段

单任务现象

from time import sleep

def run():
    while True:
        print("123")
        sleep(1.2)
if __name__ == "__main__":
    while True:
        print("456")
        sleep(1)
    #不会执行这个方法只有等上面的while执行完才能执行
    run()

启动进程实现多任务

from multiprocessing import Process
from time import sleep
import os
#子进程需要执行的代码
#os.getid获取当前进程的id号
#os.getppid获取当前进程的父进程的id号
def run(str):
    while True:
        print("sunck is a %s man--%s--%s "% (str, os.getpid(),os.getppid())
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值