并发编程
文章平均质量分 97
流星007
这个作者很懒,什么都没留下…
展开
-
带你搞明白什么是缓存穿透、缓存击穿、缓存雪崩
对缓存穿透和缓存击穿总是模棱两可?不明白什么是缓存雪崩?没关系,这篇文章将让你一次性搞明白什么是缓存穿透、什么是缓存击穿、什么是缓存雪崩,上万字总结,建议收藏。原创 2020-04-19 18:58:23 · 2605 阅读 · 49 评论 -
【并发编程】ThreadLocal:如何优雅的解决SimpleDateFormat多线程安全问题
还在为SimpleDateFormat在多线程中存在的安全问题吗?这篇文章将会以最优雅的方式解决SimpleDateFormat在多线程中的问题,那就是:ThreadLocal(本地线程存储)原创 2020-03-31 18:06:19 · 3076 阅读 · 29 评论 -
【并发编程】面试官:有没有比读写锁更快的锁?
当面试官问你有没有比读写锁更快的锁,你就这样回答他,保证加分项原创 2020-03-30 09:12:57 · 5616 阅读 · 25 评论 -
【并发编程】java并发编程:CAS(Compare and Swap)
目录概念需求:实现1.正常累加(既不加锁,也不使用原子类)。2.使用synchronized原子类为什么原子类比互斥锁的效率低?CAS的ABA问题概念compare and swap,解决多线程并行情况下使用锁造成性能损耗的一种机制,CAS操作包含三个操作数——内存位置(V)、预期原值(A)和新值(B)。如果内存位置的值与预期原值相匹配,那么处理器会自...原创 2020-01-13 09:17:50 · 638 阅读 · 2 评论 -
【并发编程】java并发编程之死锁
目录死锁是什么?产生死锁的条件用代码重现死锁如何避免死锁总结死锁是什么?官方定义:死锁是指两个或两个以上的进程(线程)在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程(线程)称为死锁进程(线程)。介绍的是不是很抽象?那到底什么是死锁呢?我们来看...原创 2019-11-07 14:43:46 · 365 阅读 · 0 评论 -
【并发编程】java并发编程之线程同步(CountDownLatch、CyclicBarrier)
多线程线程:类似执行一个命令,多线程:并发执行多条命令。多线程的优点:1.充分利用cpu的性能。2.提高系统性能。3.同一时刻处理可以处理不同的命令线程同步即当有一个线程在对内存进行操作时,其他线程都不可以对这个内存地址进行操作,直到该线程完成操作,为什么需要它呢?1.多线程会出现线程安全问题,线程同步可以有效的保证线程安全。 2.当主线程依赖两个子线程结...原创 2019-11-07 12:23:37 · 293 阅读 · 1 评论 -
【并发编程】java并发编程之synchronized
锁是什么?什么要使用它? 相信接触过并发的人都知道synchronized是一种锁,那什么是锁呢?显示生活中的解释:一把锁管控这某一个空间,只有人们拿钥匙打开锁才能进入。编程世界中的锁,和现实世界很相似,它的目的很明确:加锁的方法或者代码块,只有拿到钥匙才能访问。 那什么时候需要用到它呢?这个就要看业务场景,如果程序没有牵扯到并发或者共享变量不存在竞争,这种情况下一般不需...原创 2019-11-06 15:38:20 · 562 阅读 · 0 评论