多线程
文章平均质量分 65
Multitasking is a computer‘s ability to execute two or more concurrent programs.
Itinerant Monk
业精于勤,荒于嬉,行成于思,毁于随业精于勤,荒于嬉,行成于思,毁于随。《深入JAVA虚拟机》
展开
-
【DynamicTp】学习笔记
这里写目录标题dynamictp简介项目接入状态监控dynamictp简介项目接入状态监控原创 2024-08-05 10:59:52 · 333 阅读 · 0 评论 -
【ThreadLocal】
ThreadLocal类提供了线程作用域的变量。这种变量不同于线程中通过get或者set方法访问的普通变量,因为这些普通变量都是线程自己独立初始化的变量拷贝。在希望将状态 (如:用户ID或者事务ID)和线程关联起来的类中 ,ThreadLocal实例通常是类的私有静态字段。例如,下面的类生成每个线程本地的唯一标识符。当ThreadId.get()首次被调用的时候一个线程的ID被设置,同时在后续的调用中该ID不会被改变。} };} }} };} }} };} }原创 2024-07-24 15:53:59 · 1019 阅读 · 0 评论 -
JAVA多线程知识图谱
java多线程知识图谱。原创 2022-08-24 13:36:55 · 295 阅读 · 0 评论 -
Executors框架
通常java最简单的线程的例子是这样的: 在较小的程序中这样实践是没有问题的;但是在大规模的应用中将线程的管理和创建部分与应用部分分开则比较合理。可以提高管理效率和节省线程反复创建和销毁带来的开销。那么封装了线程管理和创建这些功能的对象就是 java.util.concurrent.Executors...原创 2022-01-17 10:42:14 · 635 阅读 · 0 评论 -
JAVA不可修改类
在面试中经常会问到关于不可变类的问题。首先我们来明确第一个问题,什么是不可变(immutable)类?一个对象在构建后,就不会被修改了,就是不可变类。接着来第二个问题,为什么需要(immutable)类?这个问题有这么两种情形,一是当在多线程情况下,多个线程对一个变量同时进行访问,会造成逻辑错误,及数据本身逻辑不一致。public class SynchronizedR.........原创 2017-09-27 19:11:38 · 1759 阅读 · 0 评论 -
JDK8 开始使用LcoalDateTime Insant DateTimeFormatter
SimpleDateFormat在format方法中将入参日期对象的时间set到calendar中calendar.setTime(date),calendar是全局变量,在SimpleDateFormat的多个方法中用到,一旦出现多线程调用的情况,calendar的值就会被修改,导致结果不正确甚至发生报错,所以SimpleDateFormat是线程不安全的.我们就来详细解释下该建议的来龙去脉。是线程不安全的类(主要是该类的方法非线程安全),一般不要定义为。SimpleDateFormat是线程非安全的。原创 2017-11-13 19:04:20 · 549 阅读 · 1 评论 -
【信号量Semaphore】
多线程的同步问题,首先宏观上要有一个抽象。就是多个线程之间可以共享内存,所以导致了两类问题thread interference和memory consistency errors. 当不同线程对同一个数据同时进行操作是,线程代码相互之间有干扰,最后很有可能会导致数据一致性的问题。第二个问题,就是一个线程对一个线程对数据的修改,另外一个线程不一定是可见的。这就是一个ha原创 2017-09-14 10:44:26 · 626 阅读 · 1 评论 -
倒计时门栓(CountDownLatch)
这篇文章转自importnew其实他也是转的。http://www.importnew.com/15731.html转载 2017-11-20 23:19:24 · 358 阅读 · 0 评论 -
循环障删(CyclicBarrier)
为了更好的理解CyclicBarrier的应用,我们需要在现实生活中找到一个合适的场景;大家应该都有旅游的经验,景区通常都有旅游大巴,这些大巴的作用就是把旅客从游客中心运送到景点的入口;所以我们可以把一个游客的买票排队上车抽象为一个线程;大巴启动出发抽象为另外一个线程;...............原创 2017-11-20 23:38:00 · 205 阅读 · 0 评论