并发编程
从0开始,构建并发编程系统知识
Canliture
hello, 程序分析!
展开
-
并发编程实战(2). 线程安全性
线程安全性什么是线程安全性? 在《Java Concurrency In Practice》中,有这么一段对于线程安全性的描述,被广泛引用:当多个线程访问某个类时,不管运行时环境采取何种调度方式或者这些线程将如何交替执行,并且在主调代码中不需要任何额外的同步或者协同,这个类都能表现出正确的行为,那么就称这个类是线程安全的---- P13. Java Concurrency In P...原创 2019-05-16 17:08:44 · 169 阅读 · 0 评论 -
并发编程实战(1). 环境搭建
1. 定义辅助注释我们定义四个注释:ThreadSafe, NotThreadSafe , Recommend , NotRecommend@Target(ElementType.TYPE) // 注解作用的目标:给一个类加上注解@Retention(RetentionPolicy.SOURCE) // 注解存在的范围:只存在于源代码中public @interface Thread...原创 2019-05-16 17:07:46 · 210 阅读 · 0 评论 -
synchronized锁住什么?锁的范围?
synchronized关键字简单地讲,可以使用这一简单的关键字来保证线程安全。但是我们首先得知道synchronized到底锁住的是什么?锁住的范围又是什么?这里测试实验仅用两个类:Test.java类,里面只有一个函数,在线程中调用的函数。Main.java类,整个实验的测试入口Tips:这里缩略地使用syn锁来表示synchronized锁版本1:syn锁住函数这里使用最简单...原创 2018-11-28 22:49:15 · 784 阅读 · 0 评论 -
线程安全(Thread Safety)
注意:更详细的内容参考<<Java并发编程实践>>这里大量的代码都来自此书,或者在此书代码的基础上进行改动/扩展本节关键字/词: 线程安全,竞争条件,Atomic(原子性),synchronized(同步锁),Reentrancy(重进入)这里主要对重要代码分析。代码例子引入线程安全问题public class UnsafeSeque原创 2018-11-28 02:33:19 · 1181 阅读 · 0 评论