在python之中实现多线程的最基础方法就是使用threading模块,而在使用threading模块实现多线程的最后都会去代用一个join方法,这个join方法的作用和很多小伙伴都不知道 。那么下面这一篇文章就会来详细的解析一下多线程中join方法的作用,往下看看吧 。
文章插图
使用它threading模块去创建多线程的时候会分出主线程和子线程,主线程指的就是一个函数或者是一个语句块,而子线程则指的是主线程之中具体去执行某些功能的代码块 。以一个简单的示例来看,如下所示:
import threadingimport timedef run(): time.sleep(2) print('当前线程的名字是: ', threading.current_thread().name) time.sleep(2)if __name__ == '__main__': start_time = time.time() print('这是主线程:', threading.current_thread().name) thread_list = [] for i in range(5): t = threading.Thread(target=run) thread_list.append(t) for t in thread_list: t.setDaemon(True) t.start() for t in thread_list: t.join() print('主线程结束了!' , threading.current_thread().name)print('一共用时:', time.time()-start_time)在上面的示例之中if下面的每一个for循环就相当于是一个子线程,而主线程则是当前正在执行的if语句块 。在这个语句块之中按照顺序去执行每一个代码块的时候可以看到它们之间执行的速度是不同的,但是在多线程之中它们会同时执行 。那么执行速度代码块就可能会在主程序执行完毕之后,子线程还没执行完 。
那么join方法的作用就是对所有的线程进行同步,当主线程if执行完毕后就将其堵塞住暂时不释放资源,直到所有的子线程执行完毕之后才是释放资源 。
【Python多线程中join方法有什么用?详解join方法】以上就是关于python多线程中join()方法的详细解析了,希望对你有所帮助 。
推荐阅读
- Python中缩进有什么作用?详解Python缩进
- 天猫超市猫超卡有效期多久?如何使用?
- 抖音小店点击率多少正常?如何提高销量?
- 抖音连续点赞拉黑是什么意思?抖音怎么获得更多赞?
- 抖音新手开播多久比较好?开播之前要怎么做?
- 抖音上热门审核要多长时间?哪类视频审核时间长?
- 乡镇事业编值不值得去 乡镇事业编一年能拿多少钱
- 正常家庭一个月燃气费 重庆燃气多少钱一立方
- 抖音浏览量多有什么好处?要注意什么?
- 拼多多返红包是真的吗?拼多多还有哪些活动?