随笔分类 - java 多线程 高并发
摘要:场景:很多情况下我们分布式微服务都需要用到分布式锁!但是第三方分布式锁插件不一定可靠。redisson 是常用的分布式加锁方式!但是难免有redis不可用的情况!这时候需要利用乐观锁。 方法:表字段 加一个版本号,或者别的字段也可以!加版本号,可以知道控制顺序而已!在update 的时候可以wher
阅读全文
摘要:https://blog.csdn.net/u012129558/article/details/78962759
阅读全文
摘要:https://coach.iteye.com/blog/855850 https://www.twle.cn/c/yufei/javatm/javatm-basic-google-guava.html
阅读全文
摘要:https://www.cnblogs.com/skywang12345/p/3509903.html
阅读全文
摘要:https://www.cnblogs.com/cjsblog/p/9267163.html https://blog.csdn.net/huaxun66/article/details/103325721
阅读全文
摘要:http://www.importnew.com/21889.html 1)CountDownLatch和CyclicBarrier都能够实现线程之间的等待,只不过它们侧重点不同: CountDownLatch一般用于某个线程A等待若干个其他线程执行完任务之后,它才执行; 而CyclicBarrie
阅读全文
摘要:https://www.cnblogs.com/baizhanshi/p/6419268.html http://www.cnblogs.com/skywang12345/p/3496101.html https://blog.csdn.net/u012403290/article/details/
阅读全文
摘要:参看资料《java并发编程的艺术》 ThreadPoolExecutor 实现线程池的基础类。 封装好几个场景化线程池实现方式: 1,FixedThreadPool FixedThreadPool被称为可重用固定线程数的线程池。FixedThreadPool使用无界队列LinkedBlockingQ
阅读全文
摘要:·ArrayBlockingQueue:一个由数组结构组成的有界阻塞队列。·LinkedBlockingQueue:一个由链表结构组成的有界阻塞队列。·PriorityBlockingQueue:一个支持优先级排序的无界阻塞队列。·DelayQueue:一个使用优先级队列实现的无界阻塞队列。·Syn
阅读全文
摘要:应用场景 ThreadLocal通常用来共享数据,当你想在多个方法中使用某个变量,这个变量是当前线程的状态,其它线程不依赖这个变量,你第一时间想到的就是把变量定义在方法内部,然后再方法之间传递参数来使用,这个方法能解决问题,但是有个烦人的地方就是,每个方法都需要声明形参,多处声明,多处调用。影响代码
阅读全文
摘要:http://www.importnew.com/20672.html https://www.cnblogs.com/wxd0108/p/5479442.html https://www.cnblogs.com/GarfieldEr007/p/5746362.html 多线程: http://bl
阅读全文
摘要:http://blog.csdn.net/shenshibaoma/article/details/53009505 http://www.importnew.com/20444.html 锁一般分为对象锁,类锁(锁住代码块)。1,对象锁是 一个非静态方法类,锁的本身就是this、锁住当前对象。sy
阅读全文
摘要:1,对其它线程可见性。原理是:别的线程每次使用前都是要刷新一下值,并不是原子性同步。所有还是会出现线程不安全。 2,禁止指令重新排序。也就是会出现机器实际执行可能和代码的顺序不一样。使用volatile可以禁止重新排序。
阅读全文