![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 95
qq_26368063
这个作者很懒,什么都没留下…
展开
-
CountDownLatch
目录CountDownLatch介绍CountDownLatch原理CountDownLatch 内部结构 CountDownLatch介绍CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程执行完后再执行。CountDownLatch是在java1.5被引入的,跟它一起被引入的并发工具类还有CyclicBarrier、Semapho...原创 2018-09-04 19:39:33 · 10804 阅读 · 1 评论 -
Java并发编程(四)volatile
JMM怎么解决原子性、可见性、有序性的问题在Java中提供了一系列和并发处理相关的关键字,比如volatile、Synchronized、final、juc等,这些就是Java内存 模型封装了底层的实现后提供给开发人员使用的关键字,在开发多线程代码的时候,我们可以直接使用 synchronized等关键词来控制并发,使得我们不需要关心底层的编译器优化、缓存一致性的问题了,所以在Java内 ...原创 2019-08-14 15:19:52 · 123 阅读 · 0 评论 -
Java并发编程(五)synchronized
synchronized在多线程并发编程中synchronized一直是元老级角色,很多人都会称呼它为重量级锁。但是,随着Java SE 1.6对 synchronized进行了各种优化之后,有些情况下它就并不那么重了,Java SE 1.6中为了减少获得锁和释放锁带来的 性能消耗而引入的偏向锁和轻量级锁,以及锁的存储结构和升级过程。我们仍然沿用前面使用的案例,然后通过 synchronize...原创 2019-08-14 18:11:21 · 196 阅读 · 0 评论 -
Java 并发编程(一) 线程的创建与终止
1.线程的状态2.如何创建,终止线程线程作为操作系统调度的最小单元,并且能够让多线程同时执行,极大的提高 了程序的性能,在多核环境下的优势更加明显。但是在使用多线程的过程中, 如果对它的特性和原理不够理解的话,很容易造成各种问题线程的状态线程一共有 6 种状态(NEW、RUNNABLE、BLOCKED、WAITING、TIME_WAITING、TERMINATED)状态值...原创 2019-08-12 17:51:31 · 166 阅读 · 0 评论 -
记Solr 6.6.4 踩得一次坑。
我们线上solr版本是6.6.4,此版本RunExecutableListener 默认是不开启得 。之前线上api操作solr 报错。原以为是必须开启这个东西 (因为solrconfig.xml 中并没有指定任何关于这个类得地方)。 Critical security fix: Fix for a 0-day exploit (CVE-2017-12629), deta...原创 2019-08-21 16:10:40 · 441 阅读 · 0 评论 -
Redis 一主两从三哨兵
由于redis单机在性能,高可用上的局限性,针对线上redis进行一次升级。当前线上redis版本信息[root@iZ258cmlvipZ ~]# /usr/local/redis/bin/redis-server --versionRedis server v=3.2.1 sha=00000000:0 malloc=jemalloc-4.0.3 bits=64 build=adccb...原创 2019-08-21 16:31:22 · 321 阅读 · 0 评论 -
Java并发编程(二)线程的安全性问题
线程的安全性问题总所周知,多线程提高了系统的性能,但令人头痛的是线程会存在的安全性问题.为什么会存在安全性问题,并且我们应该怎么去解决这类的问题。 其实线程安全问题可以总结为: 可见性、原子性、有序性这几个问题,我们搞 懂了这几个问题并且知道怎么解决,那么多线程安全性问题也就不是问题CPU 高速缓存线程是 CPU 调度的最小单元,线程涉及的目的最终仍然是更充分的利用计算机处理的效能...原创 2019-08-13 09:39:37 · 116 阅读 · 0 评论 -
Java 并发编程(三)JMM
1.1 线程之间的通信线程的通信是指线程之间以何种机制来交换信息。在编程中,线程之间的通信机制有两种,共享内存和消息传递。 在共享内存的并发模型里,线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态来隐式进行通信,典型的共享内存通信方式就是通过共享对象进行通信。 在消息传递的并发模型里,线程之间没有公共状态,线程之间必须通过明确的发送消息来显式进行通信,在java中典型的消息传递方...原创 2019-08-13 09:46:03 · 118 阅读 · 0 评论