python入行038(并发编程)

Posted mmmmmrz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python入行038(并发编程)相关的知识,希望对你有一定的参考价值。

# 1 简述操作系统发展史
"""
    手工操作-穿孔卡片
    批处理系统-磁带存储
        -联机批处理系统
        -脱机批处理系统
    多道程序系统
        -多道程序设计技术
        -多道批处理系统
    分时系统
    实时系统
"""

# 2 简述多道程序系统
"""
    基本概念:
        并发:看起来像同时运行的就可以称之为并发
        并行:真正意义上的同时执行
    2.1 多道程序设计技术
    所谓多道程序设计技术,就是指允许多个程序同时进入内存,并允许它们交替在cpu中执行。
    当一道程序因I/O请求而暂停运行时,CPU便立即转去运行另一道程序。
    注意:当一道程序长时间占用cpu的时候,操作系统也会剥夺该程序的cpu执行权限。
"""

# 3 简述进程发展史及算法演变
"""
    程序是指令、数据及其组织形式的描述,进程是程序的实体。
    -先来先服务调度算法
    -短作业优先调度算法
    -时间片轮转法
    -多级反馈队列
"""

# 4 简述同步异步阻塞非阻塞概念
"""
    进程的3个状态
        就绪态;当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为就绪状态。
        运行态:程序正在处理机上执行,此时的进程状态称为执行状态。
        阻塞态:阻塞(Blocked)状态正在执行的进程,由于等待某个事件发生而无法执行时,便放弃处理机而处于阻塞状态。
    同步和异步
        同步:所谓同步就是一个任务的完成需要依赖另外一个任务时,只有等待被依赖的任务完成后,依赖的任务才能算完成,这是一种可靠的任务序列。
        异步:所谓异步是不需要等待被依赖的任务完成,只是通知被依赖的任务要完成什么工作,依赖的任务也立即执行,只要自己完成了整个任务就算完成了。
    阻塞与非阻塞
    小结:异步非阻塞形式是效率最高的

"""

# 第五题 书写进程创建的两种方式
from multiprocessing import Process
import time


def task(name):
    print(%s is running % name)
    time.sleep(3)
    print(%s is over % name)


if __name__ == __main__:
    # 1 创建一个对象
    p = Process(target=task, args=(jason,))
    # 容器类型哪怕里面只有1个元素 建议要用逗号隔开
    # 2 开启进程
    p.start()  # 告诉操作系统帮你创建一个进程  异步
    print(主程序)


# 第二种方式 类的继承
class MyProcess(Process):
    def run(self):
        print(hello bf girl)
        time.sleep(1)
        print(get out!)


if __name__ == __main__:
    p = MyProcess()
    p.start()
    print(主程序)

 

以上是关于python入行038(并发编程)的主要内容,如果未能解决你的问题,请参考以下文章

JUC并发编程 共享模式之工具 JUC CountdownLatch(倒计时锁) -- CountdownLatch应用(等待多个线程准备完毕( 可以覆盖上次的打印内)等待多个远程调用结束)(代码片段

golang代码片段(摘抄)

[Python]小甲鱼Python视频第038课(类和对象:继承 )课后题及参考解答

Python入门100题 | 第038题

1.并发编程的优缺点

《java并发编程实战》