
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.1AtomicInteger2.2AtomicIntegerArray2.3更新引用类型2.3.1AtomicReference(解决只能保证一个共享变量原创 2020-07-28 16:40:04 · 229 阅读 · 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 · 148 阅读 · 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 · 135 阅读 · 0 评论 -
阿里云Centos javaWeb运行环境配置
一、 安装JDK1. 下载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 · 198 阅读 · 0 评论