视频中,老师讲到上图程序,p1和p2是同时进行的,但前面视频中不是讲到,
麻烦老师讲解一下?上述程序是跑完p1再跑p2,还是有其他运行方式?
为什么类里面的函数名一定要是run
一、代码
from threading import Thread from queue import Queue from time import sleep def producer(): num=1 while True: print(f'生产了{num}号加菲猫') mq.put(f'生产:{num}号加菲猫') num+=1 sleep(1) def consumer(): while True: print('购买了{0}'.format(mq.get())) sleep(2) if __name__ == '__main__': # 共享数据的容器 mq=Queue(maxsize=10) # 创建生产者线程 t1=Thread(target=producer) # 创建消费者线程 t2=Thread(target=consumer()) # 创建消费者线程 t3 = Thread(target=consumer()) # 开始工作 t1.start() t2.start() t3.start()
二、结果
三、问题
老师,这个程序运行后一直没显示结果,如图片所示,都是空白的,是怎么回事。等了2分钟,还是没变化
老师,如果要在一个文件中调用另一个文件的类和方法是那块的知识?
请问老师 是不是要同时把t1和t2都保护了才会守护主线程,不再继续下去
老师为什么主进程p1.join()不加就打印不出来列表和字典的内容,它有什么作用呢?
from multiprocessing import Process,Manager def func(name,m_list,m_dict): print('获取了数据:{}'.format(m_list)) print('获取了数据:{}'.format(m_dict)) if __name__ == '__main__': with Manager() as mgr: m_list = mgr.list() m_dict = mgr.dict() m_list.append('Hello!') p1 = Process(target=func,args=('p1',m_list,m_dict)) p1.start() p1.join()
老师这里的说如果没有callback和map接受返回值,而在方法中实现,就会在每个进程都会开启IO是什么意思,没懂、、、、、、、、、、、
2,而进程池则只需开启一个IO,然后就相当于他记录就行是为什么??????????????
老师,想问下这里的默认网络助手指的是什么?
queue Queue threading Thread time sleep (): num =: queue.qsize()<: (num) queue.put(num) num += : () sleep() (): : (queue.get()) sleep() __name__ == : queue = Queue t1 = Thread(=producer) t2 = Thread(=consumer) t1.start() t2.start()
老师我这哪里错了
老师你好!我这个怎么长度为2啊,我没找到原因,麻烦了
那个地方出错了
from threading import Thread from queue import Queue from time import sleep def producer(): num=1 while True: if mq.qsize()<10: print(f"生产了{num}号加菲猫") mq.put(f"{num}号加菲猫") num+=1 sleep(1) def consumer(): while True: print("购买了{}".format(mq.get())) sleep(2) if __name__=="__main__": #共享数据的容器 mq=Queue #创建生产者线程 t1=Thread(target=producer) #创建消费者线程 t2=Thread(target=consumer) # 创建消费者线程 t3 = Thread(target=consumer) #开始工作 t1.start() t2.start() t3.start()
老师能不能举一些具体实际的例子,感觉这什么菜刀红烧肉的东西很苍白无力
老师,您在之前解答中:
但我的程序,全局变量却发生了改变,这是为啥?
老师,类中self参数我理解的不透彻,麻烦给我解释一下嘛
老师,我代码没有问题,但是从服务器下载的图片打不开,显示图片错误;但是源图是可以打开的
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637