Thread类与线程函数

可以使用Thread对象的join方法等待线程执行完毕;主线程(main()函数)中调用Thread对象的join方法,并且Thread对象的线程函数没有执行完毕,主线程会处于阻塞状态。
使用Thread类实现多线程的步骤:
1、创建Thread类的实例;
2、通过Thread类的构造方法的target关键字参数执行线程函数;通过args关键字参数指定传给线程函数的参数。
3、调用Thread对象的start方法启动线程。
下面例子功能:使用Thread对象启动2个线程,并在各自的线程函数中使用sleep函数休眠一段时间。最后使用Thread对象的join方法等待两个线程函数都执行完毕后再推出程序。

实例代码:

import threading
from time import sleep,ctime#线程函数,index表示整数类型的索引,sec表示休眠时间,单位:秒
def fun(index,sec):print('开始执行',index,'时间:',ctime())sleep(sec)print('结束执行',index,'时间:',ctime())def main():#创建第一个Thread对象,通过target关键字参数指定线程函数fun,传入索引10和休眠时间4sthread1 = threading.Thread(target = fun,args = (10,4))#启动第一个线程
    thread1.start()#如上所述thread2 = threading.Thread(target=fun,args=(20,2))thread2.start()# 等待第一个线程thread1对象执行完毕
    thread1.join()# 等待第二个线程thread2对象执行完毕
    thread2.join()if __name__=='__main__':main()print('程序退出')

转载于:https://www.cnblogs.com/chenhaiming/p/9889947.html

PYTHON——多线程:Thread类与线程函数相关推荐

  1. 多线程—Thread类及线程三种创建方式及对比

    线程创建的3种方法: 1.继承Thread类并重写run方法 Thread类方法: Thread Thread.currentThread() :获得当前线程的引用.获得当前线程后对其进行操作. Th ...

  2. python创建线程函数_Python多线程编程(三):threading.Thread类的重要函数和方法...

    这篇文章主要介绍threading模块中的主类Thread的一些主要方法,实例代码如下: 复制代码 代码如下: ''' Created on 2012-9-7 @author:  walfred @m ...

  3. Python 批量创建线程及threading.Thread类的常用函数及方法

    在<[Python]线程的创建.执行.互斥.同步.销毁>(点击打开链接)中介绍了Python中线程的使用,但是里面线程的创建,使用了很原始的方式,一行代码创建一条.其实,Python里是可 ...

  4. java 创建线程thread_初学Java多线程:用Thread类创建线程

    在Java中创建线程有两种方法:使用Thread类和使用Runnable接口.在使用Runnable接口时需要建立一个Thread实例.因此,无论是通过Thread类还是Runnable接口建立线程, ...

  5. 多线程Thread类创建多线程

    package com.ajax; //多线程Thread类创建多线程 public class Example02 {public static void main(String[] args){n ...

  6. Thread类创建线程

    目录 1.在java中执行多线程编辑 1.1通过Thread类创建线程 1.2创建线程方法2 1.3创建线程方法3 1.4创建线程方法4 1.5创建线程方法5 2.多线程执行效率 2.1两个变量同时自 ...

  7. 继承Thread类创建线程类

    一 点睛 通过继承Thread类创建线程并启动多线程的步骤: 1 定义Thread的子类,并重写该类的run()方法,该run()方法的方法体代表了线程需要完成的任务.因此run()方法称为线程执行体 ...

  8. 【转】线程、Thread类和线程终止

    一.线程Thread启动 0. Thread类实现了java.lang.Runnable接口,即实现了run方法.虽然在Sun JDK中,start()调用了start0()方法,start0()方法 ...

  9. python一个函数调用另一个函数中的变量_在Python 中同一个类两个函数间变量的调用方法...

    在Python 中同一个类两个函数间变量的调用方法 更新时间:2019年01月31日 15:44:54 作者:wxy_summer 今天小编就为大家分享一篇在Python 中同一个类两个函数间变量的调 ...

最新文章

  1. java windows wrapper_Java Service Wrapper 使用(windows)
  2. 取消tableView多余的横线
  3. ios实例开发精品源码文章推荐
  4. IJCAI 2018所有奖项出炉:AlphaGo获奖,中国人论文占46%,华人一作近2/3
  5. (Java多线程)线程安全问题
  6. centos 6.2网卡配置
  7. Visual Studio中的项目属性--生成--配置
  8. 2021年安徽全椒中学高考成绩查询,全椒中学2020届高考记录是这样的!
  9. 打开计算机文件反应慢怎么解决方法,电脑反应慢怎么办?常见原因与解决办法...
  10. 银联在线支付网关,实现快捷安全的全球支付
  11. 练习绕口令快速提高语言表达能力(收藏)
  12. BZOJ 3786: 星系探索 ETT
  13. 洛谷 P4100 [HEOI2013]钙铁锌硒维生素 解题报告
  14. 唐山校友会会长苏伟与徐飞校长的一次短信交流
  15. qq邮箱如何在win10邮箱连接到服务器,win10自带邮箱如何使用?win10自带邮箱如何同步qq邮箱邮件?...
  16. H3C交换机如何查环路
  17. Db2 insert got DSNISGRT:500A abend
  18. 先验概率、后验概率、似然估计三者的区别与联系
  19. dubbo的常用容错机制
  20. Docker学习-Network网络

热门文章

  1. 用SQL语句创建Access表
  2. SQL 交叉表存储过程
  3. xyntservice
  4. RxHttp 一条链发送请求之强大的Param类(三)
  5. 在windows上搭建一个ftp服务器
  6. 【Go语言】【15】GO语言的面向对象
  7. linux “命令行自动补全”功能用命令
  8. 每日英语:The Invasion of the Online Tutors
  9. 管理 windows server 2003 的远程连接
  10. 不小心删除了系统的GRUB怎么办