Java线程学习笔记(三):线程中常用方法汇总

本文深入解析了Java线程的执行原理,包括时间片的概念、线程运行状态与方法调用图,并详细阐述了Java线程中常用方法及线程控制基本方法。着重介绍了线程的启动、中断、睡眠、等待、通知等核心操作,旨在为开发者提供全面的线程管理知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

线程的执行原理



 

分析:

  1. 时间片:即CPU分配给各个程序的时间,每一个进程都被分配一个时间段,称作它的时间片,即该进程允许运行的时间。由于时间片很短(ms级),所以使各个程序从表面上看是同时进行的。
  2. CPU把一度时间分成很多个时间片,它在一个时间片内只能执行一个进程,然后换下一个时间片,执行下一个进程。

Java线程运行状态与方法调用图:



 

一、Java线程中常用方法

方法描述 详解
对象.start()

表示线程处于活动的,可以抢时间片状态,而不是开始运行。

 略
对象.interrupt()表示将线程对象中断。 分析 
对象.stop()表示将线程直接终止。(已过时,不安全;如果有正在打开的资源未关闭,而线程直接被关闭) 略 
Thread.sleep() 表示该语句写到哪个线程中,当前线程睡眠。该方法有两个重载的形式,分别是sleep(long)和sleep(long,int)略 

 

二、线程控制基本方法

 方法 描述详解 
isAlive()测试线程是否处于活动状态 
getPriority()更改线程的优先级分析
setPriority()返回线程的优先级  分析 
Thread.sleep() 将当前线程睡眠,可指定毫秒数或者毫秒及纳秒数略 
join() 调用某线程的该方法,将当前线程与该线程”合并“,即等待该线程结束,在恢复当前线程的运行。 分析 
yield()  让出CPU,当前线程进入就绪队列等待调度。只要在适当的位置调用即可。略 
wait() 当前线程进入对象的wait pool。 分析 

notify()

/notifyAll() 

 唤醒对象的wait pool中的一个/所有等待线程。分析 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 说明:后续章节将针对不同方法分别进行详细整理。 

 

注:本文源自互联网,经过查阅网上资料整理而成,如涉及到他人整理的成果,在此表示感谢。由于涉及到的参考文章比较多,在此就不再一一列举。

本文是目前个人理解的结果,仅供参考,如后续发现问题,本人会进行相应的更正,也欢迎各位对Java线程感兴趣的朋友或者前辈进行指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值