Python 官方文档:入门教程 => 点击学习
今天就跟大家聊聊有关如何用python实现线程池模型效果,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。本文提供给大家的是用Python代码实现一个简单的线程效果源码案例。Python
今天就跟大家聊聊有关如何用python实现线程池模型效果,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
本文提供给大家的是用Python代码实现一个简单的线程效果源码案例。Python的多线程爬虫一直都是学习python人士相对比较关注的一项
python简单线程模型代码正文部分如下:
`#-*- encoding: UTF-8 -*-``#编码声明``import` `threading,queue,os``#导入方法模块``def` `main(inargs):``work_queue` `=` `queue.Queue()` `#queue类中实现了锁``for` `i` `in` `range``(``3``):``#设置了3个子进程``worker` `=` `Worker(work_queue,i)` `#工作线程、工作队列、线程编号``worker.daemon` `=` `True` `#守护进程``worker.start()` `#启动线程开始``for` `elemt` `in` `inargs:``work_queue.put(elemt)` `#加入到队列中开始各个线程``work_queue.join()` `#队列同步``class` `Worker(threading.Thread):``#继承线程类,类也是不太好学习的部分``def` `__init__(``self``, work_queue,number):``super``().__init__()``self``.work_queue` `=` `work_queue ``self``.number` `=` `number``def` `process(``self``,elemt):``#自定义的线程处理函数,用于run()中.``#这里仅仅打印线程号和传入参数``print``(``"\n{0} task:----{1}"``.``fORMat``(``self``.number,elemt))``def` `run(``self``):``#重载threading类中的run()``while` `True``:``try``:``elemt` `=` `self``.work_queue.get()` `#从队列取出任务``self``.process(elemt)``finally``:``self``.work_queue.task_done()` `#通知queue前一个task已经完成``if` `__name__``=``=``"__main__"``:``main(os.listdir(``"."``))``#这一步是用当前目录下得文件名作测试`
看完上述内容,你们对如何用Python实现线程池模型效果有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网Python频道,感谢大家的支持。
--结束END--
本文标题: 如何用Python实现线程池模型效果
本文链接: https://lsjlt.com/news/229018.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0