zoukankan      html  css  js  c++  java
  • 进程间通信=>IPC机制

    进程间通信=>IPC机制
    管道 占用内存空间
    队列=管道+锁 占用内存空间 先进先出 应该存放小数据
    from multiprocessing import Queue
    q=Queue() #如果放的个数小于put的个数就会阻塞住
    q.put(['first',])
    q.put({'x':2})
    q.put(3)
    q.put(4)
    print(q.get())
    print(q.get())
    print(q.get())
    print(q.get())
    结果:
    ['first']
    {'x': 2}
    3
    4
    队列
    from multiprocessing import Queue
    q=Queue(3)
    q.put(['first',],block=True,timeout=3) #block=True 队列满的时候锁
    q.put({'x':2},block=True,timeout=3) #timeout 超时时间,超过时间停止进程
    q.put(3,block=True,timeout=3)
    
    #
    print(q.get(block=True,timeout=3))
    print(q.get(block=True,timeout=3))
    print(q.get(block=True,timeout=3))
    print(q.get(block=True,timeout=3))
    
    结果:
    ['first']
    {'x': 2}
    3
    后面会报错,没有数据了,把取的第四行注释掉就好了
    对列 等
    from multiprocessing import Queue
    q=Queue(3)
    q.put_nowait(1) #q.put(1,block=False)
    q.put_nowait(2)
    q.put_nowait(3)
    
    #不等
    print(q.get_nowait()) #q.get(block=false)
    print(q.get_nowait()) #q.get(block=false)
    print(q.get_nowait()) #q.get(block=false)
    print(q.get_nowait()) #q.get(block=false)
    
    结果:
    1
    2
    3
    没有等待时间
    队列 不等
  • 相关阅读:
    linux内核启动汇编部分详解
    linux内核zImage详解
    Linux内核zImage怎么来的?
    Linux内核编译make做了什么?
    关于makefile的几点经验
    note
    tmp0000
    tmp
    SSL学习与总结
    C++学习笔记
  • 原文地址:https://www.cnblogs.com/zhouhao123/p/11229476.html
Copyright © 2011-2022 走看看