
多线程
文章平均质量分 61
多线程
SYKMI
我很懒,还没有添加简介
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
线程对局部变量以及对只能通过当前线程的局部变量才能访问到的对象进行的操作总是线程安全的
局部变量是指在函数或代码块内部定义的变量,其作用范围仅限于定义它的函数或代码块内部线程安全是指多个线程访问共享资源时,不会破坏资源的完整性。原创 2025-03-27 20:27:12 · 300 阅读 · 0 评论 -
Thread.join源码分析
这是Thread.join的核心代码,实际上join方法有重载,分别为join()和join(long millis),在join()方法中实际上执行的是join(0);所以最终都会进入到上述代码块中。我们知道当调用一个线程对象的join方法时,实际上是让当前线程等待该线程对象执行完成。这里要区分当前的和,这是两个概念。原创 2025-03-25 14:28:12 · 568 阅读 · 0 评论 -
多线程中对共享变量的操作必须保证互斥
不可见”并非绝对:即使未同步,某些情况下修改仍可能被其他线程“偶然”看到(例如JVM因内存压力自动刷新缓存)。但这是不可预测的,不能依赖。可见性 ≠ 原子性:即使线程B的修改偶然可见,也无法保证线程A读取到的是“完整修改后的值”(例如对long或double的非原子操作)。在多线程代码编写中,对于共享变量的操作不要在未同步的情况下读写,一定要保证可见性,不管是加锁还是volatile修饰。未同步的操作:若线程修改共享变量时未通过锁同步,JVM不保证其修改对其他线程可见(可能停留在本地缓存中)原创 2025-03-23 15:11:06 · 142 阅读 · 0 评论 -
Java中多线程的中断状态
在Java中,我们创建完线程之后可能需要在某些情况下去停止线程的运行,一般的话可以手动在线程中设置一个flag,规定当flag为真时继续执行,当flag为假时停止执行。在Java中也给我们提供了一个叫【中断状态】的东西,我们可以调用线程的某些方法去控制该线程的中断与否。原创 2023-11-12 21:47:32 · 293 阅读 · 0 评论 -
Java线程的生命周期
线程的生命周期原创 2022-06-07 14:05:42 · 160 阅读 · 0 评论 -
Java创建线程的3种方式
Java中创建线程有三种方式 分别是继承Thread类重写run方法 实现Runnable接口 以及实现Callable接口1 继承Thread类我们可以创建一个类 继承Thread类 重写其中的run()方法再写一个主方法实例化上面的类 再用对象.start()开启一个新线程运行结果 可以看到 线程执行是抢占时间片方式执行的提示 获取线程的ID和线程名有两个方式1//1-在继承Thread类的子类中使用this.getId和getName方法获取线程id和名System.out原创 2022-03-04 15:04:02 · 166 阅读 · 0 评论