多线程
文章平均质量分 74
all-in
身似山河挺脊梁
这个作者很懒,什么都没留下…
展开
-
多线程——CAS算法
CAS:Compare and Swap,即比较再交换。原创 2024-11-05 11:37:04 · 304 阅读 · 0 评论 -
多线程——volatile关键字与内存可见性
如果一个变量在多个线程的工作内存中都存在副本,那么这个变量就是这几个线程的共享变量。原创 2024-10-18 17:36:11 · 398 阅读 · 0 评论 -
多线程——死锁
线程之间交错执行以固定的顺序加锁执行某方法时就需要持有锁,且不释放缩减同步代码块范围,最好仅操作共享变量时才加锁永久等待使用tryLock()定时锁,超时则返回错误信息。原创 2024-09-11 17:06:02 · 586 阅读 · 0 评论 -
多线程——线程安全
前面我们用关键字synchronized构成同步代码块和同步方法,来实现多线程的同步,本质上我们可以理解为底层的程序给线程加了一把我们看不见的隐藏的锁,只有获取到这把锁的线程才能被执行,没拿到的线程你就给我等着,从而控制线程的执行顺序,达到同步效果。所以,任何线程进入同步代码块、同步方法之前,必须先获得对于同步监测器的锁定,那么谁会释放对同步监测器的锁定呢?在Java中,程序无法显式的释放对同步监测器的锁定,释放权在底层的JVM上,JVM会从释放机制中自动的释放。释放同步监测器锁定。原创 2024-09-05 18:20:41 · 979 阅读 · 0 评论 -
多线程——线程控制
在多线程中线程的执行顺序是依靠哪个线程先获得到CUP的执行权谁就先执行,虽然说可以通过线程的优先权进行设置,但是他只是获取CUP执行权的概率高点,也不一定必须先执行。join参数表示main线程会等待t1线程10毫秒,10毫秒过后,join的功效结束,即串行执行恢复为并行执行。在后台运行的,为其他线程提供服务,(Daemon Thread)。java 中的线程优先级的范围是1~10,1的优先级最低,10的优先级最高。**特征:**守护线程服务对象线程都死亡后,守护线程也会自动死亡。原创 2024-09-04 17:23:53 · 452 阅读 · 0 评论 -
多线程——创建
*3. 其他阻塞:**调用线程的sleep方法,等sleep完毕,转入就绪;创建Callable接口的实现类,重写call方法,call方法有返回值,再创建Callable实现类的实例。调用start后,线程处于就绪状态,此时已经做好了执行的准备,可以运行了,但还没有运行,蓄势待发。继承Thread类,重写run方法,run方法的方法体代表线程需要完成的任务,称为线程执行体。线程获得调度时,线程处于运行状态,开始执行run方法中的线程执行体。实现Runnable接口,重写run方法,也是线程方法执行体。原创 2024-09-03 17:51:57 · 415 阅读 · 0 评论 -
多线程——概念
。原创 2024-09-02 11:20:47 · 384 阅读 · 0 评论