1. 实现基础的信号处理 sigaction使用前一定内存清零2. 实现基础的进程模型 wait 等待子进程结束#include "common.h"#include "serversignal.h"static volatile sig_atomic_t graceful=0;int main.....
分类:
Web程序 时间:
2014-07-03 12:40:57
阅读次数:
221
今天在看别人的CAN总线程序的时候,突然发现了这么一句宏定义:#define XBYTE ((unsigned char volatile xdata *) 0),以前都没注意到过。后来查了一下,发现是在ABSACC.h这个头文件中的。这是C51中专有的东西,在C51编程中只要有外部扩展RAM,就....
分类:
其他好文 时间:
2014-07-02 14:58:41
阅读次数:
358
There are idiosyncrasies in the GCC inline assembly syntax.in the line,__asm__ __volatile__("stw%U0%X0 %1,%0" : "=m"(v->counter) : "r"(i));the stw ass...
分类:
其他好文 时间:
2014-06-24 14:34:54
阅读次数:
309
深入分析Volatile的实现原理
引言
在多线程并发编程中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”。可见性的意思是当一个线程修改一个共享变量时,另外一个线程能读到这个修改的值。
它在某些情况下比synchronized的开销更小,本文将深入分析在硬件层面上I...
分类:
其他好文 时间:
2014-06-21 19:47:44
阅读次数:
688
今天在stackoverflow上看到一个关于Volatile, Interlock, Lock的问题,发现回答的特别好,所以就想到把它翻译一下, 希望给那些对它们有疑惑的人提供点帮助:假设有一个类,它含有一个可以被多线程访问的public int counter 字段, 这个数字只会增加或减少。当...
分类:
其他好文 时间:
2014-06-21 13:21:05
阅读次数:
209
volatile保证线程间的数据是可见的(共享的),但不保证数据同步volatile相当于synchronized的弱实现,也就是说volatile实现了类似synchronized的语义,却又没有锁机制。它确保对volatile字段的更新以可预见的方式告知其他的线程。volatile包含以下语义:...
分类:
其他好文 时间:
2014-06-21 07:26:46
阅读次数:
311
贪婪是一种原罪,不要再追求性能的路上离正确越来越远。
内存模型
java内存模型重排序
锁synchronized
什么是锁独占锁分拆锁分离锁分布式锁
volatile
内存模型
java内存模型
提到同步、锁,就必须提到java的内存模型,为了提高程序的执行效率,java也吸收了传统应用程序的多级缓存体系。
在共享内存的多处理器体系架构中,每...
分类:
其他好文 时间:
2014-06-18 12:00:22
阅读次数:
225
JAVA线程 工作内存 主内存java内存模型中的八种操作:lock unlock read load
use assign store write八种基本操作必须满足的规则volatile当一个变量被定义成volatile之后,它将具备两种特性
一是保证此变量对所有线程的...
分类:
编程语言 时间:
2014-06-13 13:22:55
阅读次数:
294
Java语言是支持多线程的,为了解决线程并发的问题,在语言内部引入了 同步块 和 volatile
关键字机制在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉。Java语言是支持多线程的,为了解决线程并发的问...
分类:
编程语言 时间:
2014-06-10 21:21:56
阅读次数:
324
volatile关键字表明,即使程序代码没有对内存单元进行修改,其值也可能发生变化。例如,可以将一个指针指向某个硬件位置,其中包含了来自串行端口的时间或信息。在这种情况下,硬件(而不是程序)可能修改其中的内容。或者两个程序可能互相影响,共享数据。该关键字的作用是为了改善编译器的优化能力。例如,假设编译器发现,程序在几条语句中两次使用了某个变量的值,则编译器可能不是让程序查找这个值两次,而是将这个值...
分类:
编程语言 时间:
2014-06-08 05:34:29
阅读次数:
278