• python之进程


    守护进程
    一个进程可以设为另一个进程的守护进程
    特点是:被守进程结束时,守护进程也会随之结束
    父进程交给子进程一个任务,然而父进程先与子进程结束了,子进程的任务也就没必要继续执行了
    p.daemon = True


    互斥锁
    互斥 互相排斥
    锁的本质就是一个标志 这个标志有两个状态 一个为锁定 一个为未锁定
    什么时候用 ,当多个进程要操作同一个资源时,就会造成数据错乱 , 通常将写入操作加锁 ,读取操作不需加

    加锁会把原本并发的任务,修改为串行 ,降低了效率 ,保证了数据的安全性
    锁可以指定一部分代码串行,其他任然可以并发

    加锁的位置,是需要重点考虑的问题

    join 也可以将任务变为串行
    join固定任务的执行顺序
    join会会使得子进程的代码全部串行 ,并且主进程也会阻塞住

    注意:
    1.要保证安全必须保证大家用的都是同一把锁
    2.不能对一把锁连续执行acquire 将会导致锁死



    IPC
    进程间通讯
    1.管道 单向通讯 ,传输的是二进制
    2.共享文件 数据量几乎不受限制,但是速度慢
    3.共享内存 数据量较小 但是速度快
    4.socket 编程复杂 传输的是二进制

    最主要的方式就是共享内存
    1.Manager() 作为了解
    2.Queue 必须掌握的方式 是一个种数据容器 其特点是先进先出 并且进程中的队列 可以共享数据,自带锁机制

    生产者消费者模型
    要解决的问题: 生成者与消费者能力不平衡,导致效率低
    如何解决的:
    1.把生成方和消费分解开耦合,即把任务分到不同进程中 各司其职
    2.分开后,由于进程之间相互隔离,所以需要一个共享的容器,Queue 闪亮登场
    解决了数据交换的问题 和锁的问题
  • 相关阅读:
    WinForm Settings.settings
    winform 按钮快捷键
    movie<人类消失后的世界>
    工作2周年
    vs 连接ms sql 2000失败解决方法
    编码速度
    javascript 类型速记
    C# winform CheckedListBox
    FrontEnd Develop Resource
    javascirpt Array
  • 原文地址:https://www.cnblogs.com/huanghongzheng/p/10973560.html
Copyright © 2020-2023  润新知