java
maguangle
这个作者很懒,什么都没留下…
展开
-
synchronized总结
线程安全概念:当多个线程访问某一个类(对象或方法)时,这个对象始终都能表现出正确的行为,那么这个类(对象或方法)就是线程安全的。如下的例子就是一个线程不安全的例子:我们预期依次输出4,3,2,1,0,结果如下:t1 count = 2t3 count = 2t2 count = 2t4 count = 1t5 count = 0public class MyThread extends Threa...原创 2018-06-15 13:29:48 · 118 阅读 · 0 评论 -
volatile
volatile关键字在c语言中也有。volatile是一个类型修饰符(type specifier),就像大家更熟悉的const一样,它是被设计用来修饰被不同线程访问和修改的变量。volatile的作用是作为指令关键字,确保本条指令不会因编译器的优化而省略,且要求每次直接读值。简单地说就是防止编译器对代码进行优化。比如如下程序:对外部硬件而言,上述四条语句分别表示不同的操作,会产生四种不同的动作...原创 2018-06-15 16:48:24 · 298 阅读 · 0 评论