多线程编程
文章平均质量分 73
beginTheWorld
相当于别人读初中的水平我要读大学
展开
-
伪共享---cache line 填充
我们经常提到一个短语Mechanical Sympathy,这个短语也是Martin博客的标题(译注:Martin Thompson),Mechanical Sympathy讲的是底层硬件是如何运作的,以及与其协作而非相悖的编程方式。(注解:sympathy这里是共鸣、一致的含义)我在上一篇文章中提到RingBuffer后,我们收到一些关于RingBuffer中填充高速缓存行的评论和疑问。转载 2013-10-25 15:53:30 · 2425 阅读 · 0 评论 -
volatile实现机制
引言在多线程并发编程中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。可见性的意思是当一个线程修改一个共享变量时,另外一个线程能读到这个修改的值。它在某些情况下比synchronized的开销更小,本文将深入分析在硬件层面上Inter处理器是如何实现Volatile的,通转载 2013-10-25 15:57:04 · 706 阅读 · 0 评论 -
Disruptor无锁ringbuff实现
http://blog.163.com/zongyuan1987@126/blog/static/131623156201271021955717/?latestBlogDisruptor原理剖析 2012-08-11 23:06:43| 分类: java | 标签:storm disruptor java |字号 订阅Disru转载 2013-10-28 16:01:51 · 1568 阅读 · 0 评论 -
多线程安全无锁消息队列
技术介绍:cas 原子操作:是有cpu提供的原子操作。MyDeque{ Node *head; Node *tail; void enQueue(T value); T deQueue();}入队操作void enQueue(T value){ node * q=getNewNode(); q->next=null;原创 2013-10-28 15:57:10 · 2606 阅读 · 1 评论 -
关于__syn_fetch, mutexlock 性能比较
__sync_add_and_get() 1亿次;mutexl原创 2014-07-09 12:23:12 · 593 阅读 · 0 评论