Java 线程方法
2024-09-23 07:16:14
线程标识相关
方法 | 描述 |
public Thread(Runnable target, String name) |
带参数的构造方法, 第二个参数是线程名称 |
public static Thread currentThread() |
静态方法, 返回当前线程 |
public String getName() |
获取线程名称, 如果没指定, 默认 Thread-index |
public void setName(String name) |
设置线程名称 |
public long getId() |
获取线程编号 |
线程优先级相关
不是绝对的优先级, 只是提升抢夺 CPU 概率
有三个常量, MIN_PRIORITY(1); NORM_PRIORITY(5); MAX_PRIORITY(10); 默认是 NORM_PRIORITY
方法 | 描述 |
public int getPriority() |
获取线程优先级 |
public void setPriority(int newPriority) |
设置线程优先级, 范围 1-10 |
阻塞相关方法
方法 | 描述 |
public void join() throws InterruptedException |
合并线程 加入一个新线程, 当新线程执行完毕再执行当前线程 |
public static void yield() |
线程让步, 静态方法 让出 CPU 的使用权, 再次和别的线程抢夺 CPU 资源 写在线程体内部( run() 方法里), 注意主线程没有 run() 方法 |
public static void sleep(long millis) throws InterruptedException |
线程休眠, 静态方法 暂定执行, 指定时间过后再次执行 休眠期间不会释放锁, 意味着休眠期间别的线程不会做什么事儿, 因为获取不到锁 |
public void wait(long timeout) throws InterruptedException public void wait() throws InterruptedException |
来自 Object 类 能不使用就不使用, 很多书是这样说的, 我也没完全搞明白这个方法的原理~~~~ 线程等待, 如果指定时间, 该时间过后自动唤醒; 如果不指定, 需要使用 notify() 或 notifyAll() 来唤醒 等待期间会释放锁, 唤醒之后再次尝试获取锁 |
public void notify() public void notifyAll() |
来着 Object 类 能不使用就不使用 唤醒 wait() 的线程 |
最新文章
- 承接Unreal4外包虚幻外包,北京正规公司
- Log4j写日志文件使用详解
- Servlet—简单的管理系统
- H5危险的文件上传对话框
- ACE的接受器(Acceptor)和连接器(Connector):连接建立模式
- linux for 使用
- ios 获得版本号
- MongoDB学习之路(四)
- ListView如何优化
- Variant does not reference an auomation object
- [LeetCode] Implement Rand10() Using Rand7() 使用Rand7()来实现Rand10()
- 微信小程序开发--富文本插件wxParse的使用
- 开发一个支持多用户同时在线的FTP程序
- Windows DIB文件操作具体解释-4.使用DIB Section
- 关于mapreducer 读取hbase数据 存入mysql的实现过程
- System.Web.Optimization 找不到引用,教你如何解决?
- iOS 视图间的几种通信方式
- [ SHELL编程 ] 数组、关联数组和awk数组
- react-scripts的css modules
- 查看linux安装包的版本信息-TX2