码迷,mamicode.com
首页 >  
搜索关键字:原子操作    ( 862个结果
关于int全区变量读写的原子性
关于int全区变量读写的原子性     关于int变量的读写是否原子性网上有很多讨论,貌似不同平台不同,这里自己做实现在arm9平台测试。这里要注意原子性并非指一条汇编才原子,实际上即使一次赋值编译成几条汇编依然可以是原子的,只要保证该内存不产生中间值,只有原值和目标值两种状态则就是原子的。对一个int变量赋值是否要进入临界区呢? 以下基于arm920t cpu Sourcer...
分类:其他好文   时间:2014-11-21 12:40:48    阅读次数:282
JavaBean中DAO设计模式介绍
一、信息系统的开发架构客户层-------显示层-------业务层---------数据层---------数据库1.客户层:客户层就是客户端,简单的来说就是浏览器。2.显示层:JSP/Servlet,用于给浏览器显示。3.业务层:对于数据层的原子操作进行整合。4.数据层:对于数据库进行的原子操作...
分类:编程语言   时间:2014-11-20 10:13:27    阅读次数:222
Linux进程间通信—信号量
二.信号量(semophore)信号量是一种计数器,可以控制进程间多个线程或者多个进程对资源的同步访问,它常实现为一种锁机制。实质上,信号量是一个被保护的变量,并且只能通过初始化和两个标准的原子操作(P/V)来访问。(P,V操作也常称为wait(s),signal(s))semaphore 与mut...
分类:系统相关   时间:2014-11-17 17:30:26    阅读次数:408
CAS原子操作实现无锁及性能分析
最近在研究nginx的自旋锁的时候,又见到了GCC CAS原子操作,于是决定动手分析下CAS实现的无锁到底性能如何,网上关于CAS实现无锁的文章很多,但少有研究这种无锁的性能提升的文章,这里就以实验结果和我自己的理解逐步展开。...
分类:其他好文   时间:2014-11-13 19:00:00    阅读次数:335
秒杀多线程第四篇 一个经典的多线程同步问题
上一篇《秒杀多线程第三篇原子操作 Interlocked系列函数》中介绍了原子操作在多进程中的作用,如今来个复杂点的。这个问题涉及到线程的同步和相互排斥,是一道很有代表性的多线程同步问题,假设能将这个问题搞清楚,那么对多线程同步也就打下了良好的基础。程序描写叙述:主线程启动10个子线程并将表示子线程...
分类:编程语言   时间:2014-11-10 09:53:12    阅读次数:214
多线程之同步Synchronized
在java中synchronized是多个线程共享同一段代码的锁。 当有多个线程并发执行同一块代码块时,加锁可以让一段时间内只有一个线程在执行,保证了业务的原子操作。 例如下面: package andy.thread.traditional.test; /** * @author Zhang,Tianyou * @version 2014年11月8日 下午11:02:53 */ ...
分类:编程语言   时间:2014-11-08 23:37:15    阅读次数:302
spin_lock & mutex_lock的差别?
本文由该问题引入到内核锁的讨论,归纳例如以下为什么须要内核锁?多核处理器下,会存在多个进程处于内核态的情况,而在内核态下,进程是能够訪问全部内核数据的,因此要对共享数据进行保护,即相互排斥处理有哪些内核锁机制?(1)原子操作atomic_t数据类型,atomic_inc(atomic_t *v)将v...
分类:其他好文   时间:2014-11-08 18:10:46    阅读次数:125
转--秒杀多线程第四篇 一个经典的多线程同步问题
上一篇《秒杀多线程第三篇原子操作 Interlocked系列函数》中介绍了原子操作在多进程中的作用,现在来个复杂点的。这个问题涉及到线程的同步和互斥,是一道非常有代表性的多线程同步问题,如果能将这个问题搞清楚,那么对多线程同步也就打下了良好的基础。程序描述:主线程启动10个子线程并将表示子线程序号的...
分类:编程语言   时间:2014-11-04 17:13:00    阅读次数:222
多线程编程之无锁队列
关于无锁队列的概念与实现,可以参考博文《无锁队列的实现》,主要涉及到的知识点包括CAS原子操作、无锁队列的链表实现、无锁队列的数组实现以及ABA问题。 下面借鉴了《多线程的那点儿事(之无锁队列)》的代码,说明两个线程(一个添加一个读取数据)之间的无锁队列,可以不借助线程互斥方法就能够达到并行效...
分类:编程语言   时间:2014-11-04 10:36:38    阅读次数:226
gcc提供的原子操作
gcc从4.1.2提供了__sync_*系列的built-in函数,用于提供加减和逻辑运算的原子操作。其声明如下:// 返回运算之前的值,*ptr指向参加运算的值,value是第二个操作的值type__sync_fetch_and_add(type*ptr,typevalue,...)type__s...
分类:其他好文   时间:2014-11-02 19:31:16    阅读次数:145
862条   上一页 1 ... 76 77 78 79 80 ... 87 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!