xzzz2020
xzzz2020
全部文章
分类
操作系统(11)
数据库(12)
未归档(5)
深入理解JVM(20)
算法与数据结构(14)
网络原理(11)
面试题总结(36)
归档
标签
去牛客网
登录
/
注册
Xu大大
全部文章
(共394篇)
【详解】Java多线程之Thread-Per-Message设计模式
分析 每个消息一个线程。message可以理解为命令,请求。为每一个请求新分配一个线程,由这个线程来执行处理。 Thread-Per-Message模式中,请求的委托端和请求的执行端是不同的线程,请求的委托端会告诉请求的执行端线程:这项工作就交给你了 编码 public clas...
2020-08-14
0
630
【详解】Java多线程之两个阶段终止设计模式
分析 Two-Phase Termination Pattern,指的就是当希望结束一个线程的时候,送出一个终止请求,但是不会马上停止,做一些刷新工作。进入“终止处理中”,在该状态下,不会进行该线程日常工作任务的操作,而是进行一些终止操作。 这个方式所考虑的因素如下: 1,必须要考虑到...
2020-08-14
0
460
【详解】Java多线程之worker设计模式
分析 Master-Worker模式是常用的并行设计模式。核心思想是,系统由两个角色组成,Master和Worker Master负责接收和分配任务 Worker负责处理子任务 任务处理过程中,Master还负责监督任务进展和Worker的健康状态;Master将接收Client提...
2020-08-14
0
568
【详解】Java多线程之Active Object设计模式
这里写目录标题 一、分析 二、实现一个ActiveObject 设计模式 ActiveObject 核心思想 指令的接收与分发 结果的封装和返回 一、分析 Active是主动的意思,因此ActiveObject就是主动对象的意思。所谓主动一般指有...
2020-08-14
0
1054
【详解】Java高并发之CAS
目录 一、CAS机制 二、举例 三、CAS的缺点 四、利用CAS实现TryLock 五、ABA问题 基本问题 解决方式--AtomicStampedReference 一、CAS机制 CAS机制当中使用了3个基本操作数:内存地址V,旧的预期...
2020-08-14
1
690
【详解】Java高并发原子类型之AtomicInteger
这里写目录标题 引出 源码阅读 1. 定义的变量 2. layzSet方法: 3. set方法 4. 增加和减少 CAS 引出 高并发的情况下,i++无法保证原子性,往往会出现问题,所以引入AtomicInteger类。 p...
2020-08-14
1
591
【详解】Java高并发原子类型之AtomicBoolean
分析 在高并发条件下,如果都需要对flag进行修改,就会破坏其原子性 观察下面代码 public class AtomicBooleanTest { private static volatile Boolean flag = true; public stati...
2020-08-14
1
636
【详解】Java高并发值AtomicReference
AtomicReference 提供了引用变量的读写原子性操作。 提供了如下的方法: compareAndSet(V expect, V update) getAndSet(V newValue) lazySet(V newValue) set(V newValue) g...
2020-08-14
1
585
【详解】Java并发之AtomicxxxFieldUpdater
引出 由于原子性的类型是后期引出的,但是想让原来已经写好的属性也具有原子性,就可以利用这个类 AtomicXXXFieldUpdater主要包括以下几个:AtomicIntegerFieldUpdater,AtomicLongFieldUpdater,AtomicReferenceFieldUp...
2020-08-14
0
547
比较几种自增操作时间复杂度
比较几种Counter的自增操作时间 编写一个没有做任何处理的自增 static class StupidCounter implements Counter{ private long counter = 0; @Override public void incre...
2020-08-14
0
501
首页
上一页
15
16
17
18
19
20
21
22
23
24
下一页
末页