java
Xibo_Yue
一起学习,一起进步
展开
-
java多线程-CAS
目录 1.什么是原子操作?如何实现原子操作? 1.1原子操作的概念 1.2第一种实现方式:采用锁 1.3采用锁带来的问题: 1.4第二种实现方式:CAS的指令 1.5采用CAS操作所带来的问题 1.5.1ABA问题 1.5.2循环时间长开销大 1.5.3只能保证一个共享变量的原子操作 2.Jdk中相关原子操作类的使用 2.1AtomicInteger 2.2AtomicIntegerArray 2.3更新引用类型 2.3.1AtomicReference(解决只能保证一个共享变量原创 2020-07-28 16:40:04 · 182 阅读 · 0 评论 -
java多线程-ThreaLocal
ThreadLocal(线程本地变量),作用是让每个线程都维护一份独立的变量副本,解决了变量并发访问冲突的问题。表面上看,变量是存储在ThreadLocal里面的,实则不然: 1. ThreadLocal只是个“工具类”,对外暴露了get、set、remove接口; 2. 内部实现:变量其实是保存在当前线程Thread类里,准确来说是保存在Thread类中由ThreadLocal实现的ThreadLocal.ThreadLocalMap成员变量里; set方法 public void s.原创 2020-07-28 16:36:16 · 121 阅读 · 0 评论 -
java多线程-基础知识
1. 启动线程的方式 1. 继承Thread类,新建一个当前类对象,并且运行其start()方法 2. 实现Runnable接口,然后新建当前类对象,接着新建Thread对象时把当前类对象传进去,最后运行Thread对象的start()方法 3. 实现Callable接口,新建当前类对象,在新建FutureTask类对象时传入当前类对象,接着新建Thread类对象时传入FutureTask类对象,最后运行Thread对象的start()方法 (FutureTask类是Runnable接口的继承接口的原创 2020-07-28 10:34:26 · 101 阅读 · 0 评论 -
阿里云Centos javaWeb运行环境配置
一、 安装JDK 1. 下载jdk 下载地址: http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html 2. 上传压缩包到服务器 a将下载好的jdk压缩包上传到服务器; b可利用xftp工具将压缩包复制到/usr/local/soft目录下面; ...原创 2018-08-15 09:52:15 · 175 阅读 · 0 评论