java线程介绍

关于 线程、进程 的相关知识,自行百度。
该文只介绍java中并发操作的相关知识点。

一个例子:

Thread myThread=new Thread(()->{
    // do something...
});
myThread.start();

java中定义线程的关键字是Thread类,do something 就是这个线程要做的事情,定义完后启动线程,调用:
myThread.start();

不要使用myThread.run();方法,该方法只是执行 do something处的逻辑,并不会启动一个新线程。

线程的状态

线程的状态

  • New:新创建
  • Runnable:可运行(因我们并不能决定线程什么时候执行,只是交给操作系统去调度,待有可用时间片时线程就会执行,所以是可运行状态,而不是正在运行状态)
  • Blocked:被阻塞
  • Waiting:等待
  • Timed waiting:计时等待
  • Terminated:被终止(要么正常结束,要么因未处理的异常导致线程意外终止

线程优先级

每个线程都有优先级,默认情况下继承自父线程,优先级从1-10一共10级,其中MIN_PRIORITY=1表示最低,MAX_PRIORITY=10表示最高,NORM_PRIORITY=5表示一般。优先级的高低可作用于线程调度器如何分配时间片,优先级越高被调度执行的可能越大。(不建议手动调整优先级,除非你明确要这么做,否则可能导致优先级低的线程永远不会被调度)。

如果要设置优先级,使用 myThread.setPriority(3); 方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值