美文网首页
并发编程1

并发编程1

作者: 功夫杨 | 来源:发表于2020-04-22 22:49 被阅读0次

    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('主程序')

    相关文章

      网友评论

          本文标题:并发编程1

          本文链接:https://www.haomeiwen.com/subject/vbagihtx.html