码迷,mamicode.com
首页 >  
搜索关键字:无锁    ( 351个结果
一个无锁消息队列引发的血案:怎样做一个真正的程序员?(五)——RingQueue(中) 休眠的艺术
这几天研究了一下 disruptor .Net版,由于.Net版跟进不及时,网上只有 v2.10 版。没仔细研究,但可以肯定的是跟最新的Java版 disruptor 3.30 是有不少区别的。我也用这个 2.10 的.Net版本写了跟我们的问题相似的测试程序,得到的结果跟 Java 版的 disr...
分类:其他好文   时间:2015-01-14 13:59:44    阅读次数:336
多线程读取全局变量 (在无锁状态下 会造成多少种值的出现)
int global = 0; // thread 1 for(int i = 0; i < 10; ++i) global -= 1; // thread 2 for(int i = 0; i < 10; ++i) global += 1;之后global的可能的值是多少(多种可能)?     这个问题考虑的是全局变量global的加减操作不是原子操作,在加减过程中有可能被打断,从而产生...
分类:编程语言   时间:2015-01-13 19:48:40    阅读次数:168
基于循环数组的无锁队列
在之前的两篇博客(线程安全的无锁RingBuffer的实现,多个写线程一个读线程的无锁队列实现)中,分别写了在只有一个读线程、一个写线程的情况下,以及只有一个写线程、两个读线程的情况下,不采用加锁技术,甚至原子运算的循环队列的实现。但是,在其他的情况下,我们也需要尽可能高效的线程安全的队列的实现。本...
分类:编程语言   时间:2015-01-11 22:47:53    阅读次数:307
无锁的环形队列
#ifndef _RingQueue_H_#define _RingQueue_H_#include templateclass RingQueue{public: //----------------------------------------------------- // 构造...
分类:其他好文   时间:2015-01-11 14:43:13    阅读次数:172
一个无锁消息队列引发的血案:怎样做一个真正的程序员?(四)——月:关于RingQueue(上)
上一篇分析了 Sinclair 的 q3.h 的原理,以及根据网友 korall 的提醒,我们可以看到,q3.h 的 push() 前半部分领号的过程是 lock-free 的,这里 lock-free(无锁) 的定义是指假如有一个线程在领号的过程中被无限休眠或崩溃(假设存在崩溃的可能性),也不会造...
分类:其他好文   时间:2015-01-08 14:59:25    阅读次数:255
一个无锁消息队列引发的血案:怎样做一个真正的程序员?(三)——地:q3.h 与 RingBuffer
无锁队列   第一篇文章末尾我们提到的《无锁队列的实现》(陈皓(hào)),该文末尾提到的“用数组实现无锁队列”,即用 RingBuffer 实现的无锁队列。
分类:其他好文   时间:2015-01-05 10:44:19    阅读次数:305
HTML5之 WebWorkers
为了进行后台计算提供的完全隔离计算方式 不可访问 DOM APIs 不可访问 window object 不可访问 document object 强隔离保证并行计算结果无误(无锁机制)---- 启动 定义Worker对象 var w = new Worker("calc.js"); Worker会...
分类:Web程序   时间:2015-01-04 15:14:11    阅读次数:149
一个无锁消息队列引发的血案:怎样做一个真正的程序员?(二)——月:自旋锁
前续一个无锁消息队列引发的血案:怎样做一个真正的程序员?(一)——地:起因平行时空 在复制好上面那一行我就先停下来了,算是先占了个位置,虽然我知道大概要怎么写,不过感觉还是很乱。 我突然想到,既然那么纠结,那么混乱,那么不知所措,我们不如换个视角。记得高中时看过的为数不多的长篇小说《穆斯林的葬礼.....
分类:其他好文   时间:2015-01-03 23:43:46    阅读次数:518
一个无锁消息队列引发的血案:怎样做一个真正的程序员?(一)——起因
起因 某一日,从云风的SkyNet群(QQ群)里知道 DouBan(豆瓣) 上有人喷云风,是从 ”《怎样识别水货程序员》说的是真的吗?” 这个《知乎》帖子开始的,当初也是看了个大概,实在对知乎、豆瓣之类的不太感冒,文字又长,瞄了一下完事。其实我一开始没弄清是在豆瓣还是知乎上喷他,今天才看明白经过。....
分类:其他好文   时间:2015-01-01 22:31:27    阅读次数:358
Nah Lock: 一个无锁的内存分配器
概述我实现了两个完全无锁的内存分配器:_nalloc 和 nalloc。 我用benchmark工具对它们进行了一组综合性测试,并比较了它们的指标值。与libc(glibc malloc)相比,第一个分配器测试结果很差,但是我从中学到了很多东西,然后我实现了第二个无锁分配器,随着核数增加至30,测试...
分类:其他好文   时间:2014-12-21 12:40:31    阅读次数:241
351条   上一页 1 ... 29 30 31 32 33 ... 36 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!