用multiprocessing模块建立线程

没什么介绍直接上: 

#_*_coding:utf-8*_*
'''
用multiprocessing模块建立线程
'''
#导入multipeocessing模块中的Porcess类:
from multiprocessing import Process,Queue  
import time

def func1(q):              #生产者函数
    print("这个线程当前队列大小%s"%q.qsize())
    if not q.full():
        q.put('消息')      #产生消息
def func2(q):              #消费者函数
    time.sleep(1)
    print("这个线程接受消息前队列大小%s"%q.qsize())
    while not q.empty():
        s=q.get()          #接收消息
        print(s)

#建立主函数:
if __name__=='__main__':
    '''
    创建线程:
    '''
    q=Queue()   #创建队列
    #func1是调入线程的函数,args所赋值是函数func1的实参(必须是数组)。
    p1=Process(target=func1,args=(q,))
    p2=Process(target=func2,args=(q,))
    p1.start()  #启动线程
    p2.start()
    p1.join()  #结束线程
    p2.join()

看结果: 

这个线程当前队列大小0
这个线程接受消息前队列大小1
消息
PS C:\Users\xx\Desktop\python_code>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值