摘要:在日常开发中,我们经常要发布一些对象,比如通过类的非私有方法返回对象的引用或者通过公有静态变量发布对象。 通过类的非私有方法返回对象的引用。
阅读全文
摘要:可见性它是一个线程对主内存的修改可以及时的被其他线程观察到。有了Java内存模型的基础,这三个原因就很容易理解了。对于可见性,JVM提供了synchronized和volatile,首先我们来看一下synchronized。 Java内存模型关于synchronized有两条规定,我们在原子性里面,
阅读全文
摘要:原子性它提供了互斥访问,同一时刻只能有一个线程来对它进行操作。能保证同一时刻只有一个线程来对其进行操作的,除了Atomic包之外,还有锁。JDK提供锁主要分两种,synchronized是一个Java的关键字,主要是依赖JVM去实现锁,因此在这个关键字作用对象的作用范围内,都是同一时刻只能有一个线程
阅读全文
摘要:AtomicReference和AtomicLong、AtomicInteger很像,方法也基本上是一样的,然后我们通过引用Integer来做一个简单的例子。 com.mmall.concurrency.example.atomic.AtomicExample4 C:\Users\ZHONGZHEN
阅读全文
摘要:我们发现在不做任何同步的情况下,我们计算的累加结果是错误的。 com.mmall.concurrency.example.count.CountExample2 C:\Users\ZHONGZHENHUA\imooc\concurrency\src\main\java\com\mmall\concu
阅读全文
摘要:CountDownLatch,计数器向下减的一个闭锁。假设计数器的值cnt=3,CountDownLatch这个类可以阻塞线程,并保证线程在满足某种特定的条件下继续执行,这是CountDownLatch它可能起到的作用。 信号量,Semaphore它可以阻塞进程,并且控制同一时间的请求的并发量。Co
阅读全文
摘要:C:\Users\ZHONGZHENHUA\imooc\concurrency\pom.xml com.mmall.concurrency.TestController http://blog.getpostman.com/2017/03/14/going-native/ Globals那里配置环境
阅读全文
摘要:定义注解 java.lang.annotation.Target java.lang.annotation.RetentionPolicy RUNTIME,注解会在CLASS的字节码文件中存在,在运行时通过反射可以拿到。SOURCE在编译的时候就会被忽略掉。 com.mmall.concurrenc
阅读全文
摘要:https://start.spring.io/ 这是我们实际项目的地址:https://gitee.com/lvyinhaolaiwu/concurrency。取一下git上面的代码。 C:\Users\ZHONGZHENHUA\.ssh C:\Users\ZHONGZHENHUA\imooc\c
阅读全文
摘要:/Concurrency/src/main/java/com/mmall/concurrency/example/count/CountExample.java /Concurrency/src/main/java/com/mmall/concurrency/example/count/MapExa
阅读全文