
多线程
文章平均质量分 89
CrazyHSF
这个作者很懒,什么都没留下…
展开
-
原子性、有序性和可见性
概述 多任务处理在现代计算机操作系统中几乎已是一项必备的功能了。在许多情况下,让计算机同时去做几件事情,不仅是因为计算机的运算能力强大了,还有一个很重要的原因是计算机的运算速度与它的存储和通信子系统速度的差距太大,大量的时间都花费在磁盘I/O、网络通信或者数据库访问上。如果不希望处理器在大部分时间里都处于等待其他资源的状态,就必须使用一些手段去把处理器的运算能力“压榨”出来,否则就会造成很...原创 2018-08-09 23:57:38 · 519 阅读 · 0 评论 -
简述 volatile 特性以及原理
多处理器的计算机能够暂时在寄存器或本地内存缓冲区中保存内存中的值。结果是,运行在不同处理器上的线程可能在同一内存位置取到不同的值。 编译器可以改变指令执行的顺序以使吞吐量最大化,这种顺序上的变化不会改变代码的语义,但是编译器假定内存的值仅仅在代码中有显式的修改指令时才会改变。然而,内存的值 volatile关键字为实例域的同步访问提供了一种免锁机制。如果声明一个域为volat...原创 2018-08-30 01:07:58 · 1197 阅读 · 0 评论