
高并发编程
努力就好其他的不管
不积跬步无以至千里。这一秒不放弃,下一秒就有希望!坚持下去就会成功!
展开
-
Disruptor高性能缓存队列
例子一: 一个生产者多消费者 共同消费产品package com.h3c.disruptor02;public class TestEvent { private String line; public String getLine() { return line; } public void setLine(String line)原创 2017-12-29 13:38:07 · 942 阅读 · 0 评论 -
悲观锁,乐观锁,行锁,表锁,页锁,共享锁,排他锁
最近在看 大数据量下高并发同步问题,然后看到了悲观锁,乐观锁,然后又看到了其他的锁,有点懵,然后就查资料学习。悲观锁: 顾名思义,很悲观,就是每次拿数据的时候都认为别的线程会修改数据,所以在每次拿的时候都会给数据上锁。上锁之后,当别的线程想要拿数据时,就会阻塞,直到给数据上锁的线程将事务提交或者回滚。传统的关系型数据库里就用到了很多这种锁机制,比如行锁,表锁,共享锁,排他锁等,都是在做操作之前先原创 2018-02-27 11:29:05 · 248 阅读 · 0 评论 -
高并发编程 -- Java中CAS详解
在JDK 5之前Java语言主要依靠synchronized关键字保证同步,这会导致有锁。一、锁机制存在以下问题:(1)在多线程竞争下,加锁、释放锁会导致比较多的上下文切换和调度延时,引起性能问题。(2)一个线程持有锁会导致其它所有需要此锁的线程挂起。(3)如果一个优先级高的线程等待一个优先级低的线程释放锁会导致优先级倒置,引起性能风险。二、volatile机制volatile到底如何保证可见性和禁止指令重排序的。“观察加入volatile关键字和没有加入volatile关.原创 2020-05-23 14:23:56 · 368 阅读 · 2 评论