- 博客(2)
- 收藏
- 关注
转载 锁及cas的妙用
锁(lock)的代价锁是用来做并发最简单的方式,当然其代价也是最高的。内核态的锁的时候需要操作系统进行一次上下文切换,加锁、释放锁会导致比较多的上下文切换和调度延时,等待锁的线程会被挂起直至锁释放。在上下文切换的时候,cpu之前缓存的指令和数据都将失效,对性能有很大的损失。操作系统对多线程的锁进行判断就像两姐妹在为一个玩具在争吵,然后操作系统就是能决定他们谁能拿到玩具的父母,这是很慢的。用户态
2017-08-15 20:16:53 1530
转载 轻量级mq实现之 disruptor 原理
Disruptor最大的特点是无锁实现队列.(当然默认使用的BlockingWaitStrategy还是用到了lock.lock();publish的时候signalAll().但是你可以选择不用这种策略的)Disruptor说的是生产者和消费者的故事.有一个数组.生产者往里面扔芝麻.消费者从里面捡芝麻.但是扔芝麻和捡芝麻也要考虑速度的问题.1 消费者捡的比扔的快 那么消费者要
2017-08-14 16:55:20 2157
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人