MCPcopy Create free account

hub / github.com/aalansehaiyang/Lock-Learning / functions

Functions61 in github.com/aalansehaiyang/Lock-Learning

↓ 6 callersMethodlock
<pre> getAndSet原子操作来判断锁状态并尝试获取锁 缺点:getAndSet底层使用CAS来实现,一直在修改共享变量的值,会引发缓存一致性流量风暴 </pre>
src/main/java/com/lock/spin/SpinLock.java:20
↓ 6 callersMethodunlock
释放锁
src/main/java/com/lock/spin/SpinLock.java:28
↓ 1 callersMethodgetResourceId
()
src/main/java/com/lock/semaphore/ResourceManage.java:38
↓ 1 callersMethodm1
()
src/main/java/com/lock/reentrant/ReentrantTest.java:22
↓ 1 callersMethodm1
()
src/main/java/com/lock/class1/SynchronizedStaticMethod.java:10
↓ 1 callersMethodm1
()
src/main/java/com/lock/class1/SynchronizedClass.java:11
↓ 1 callersMethodm1
()
src/main/java/com/lock/object/SynchronizedObject.java:15
↓ 1 callersMethodm1
()
src/main/java/com/lock/object/SynchronizedThis.java:10
↓ 1 callersMethodm1
()
src/main/java/com/lock/object/SynchronizedMethod.java:10
↓ 1 callersMethodm2
()
src/main/java/com/lock/reentrant/ReentrantTest.java:39
↓ 1 callersMethodm2
()
src/main/java/com/lock/class1/SynchronizedStaticMethod.java:20
↓ 1 callersMethodm2
()
src/main/java/com/lock/class1/SynchronizedClass.java:23
↓ 1 callersMethodm2
()
src/main/java/com/lock/object/SynchronizedObject.java:27
↓ 1 callersMethodm2
()
src/main/java/com/lock/object/SynchronizedThis.java:22
↓ 1 callersMethodm2
()
src/main/java/com/lock/object/SynchronizedMethod.java:20
↓ 1 callersMethodput
往队列里面插入数据
src/main/java/com/lock/condition/ConditionDemo.java:30
↓ 1 callersMethodtake
从队列读数据
src/main/java/com/lock/condition/ConditionDemo.java:56
↓ 1 callersMethoduseResource
(int userId)
src/main/java/com/lock/semaphore/ResourceManage.java:21
MethodReadTask
(CountDownLatch countDownLatch, ReentrantReadWriteLock lock)
src/main/java/com/lock/readwrite/ReadTask.java:20
MethodReadTask
(ConditionDemo condition)
src/main/java/com/lock/condition/TestClass.java:27
MethodReentrantTest
(CountDownLatch countDownLatch)
src/main/java/com/lock/reentrant/ReentrantTest.java:64
MethodResourceManage
()
src/main/java/com/lock/semaphore/ResourceManage.java:12
MethodSemaphoreTest
(ResourceManage resourceManage, int userId, CountDownLatch countDownLatch)
src/main/java/com/lock/semaphore/SemaphoreTest.java:16
MethodSpinLockTest
(SpinLock spinLock, CountDownLatch countDownLatch)
src/main/java/com/lock/spin/SpinLockTest.java:15
MethodTask1
(SynchronizedClass synchronizedClass)
src/main/java/com/lock/class1/SynchronizedClass.java:40
MethodTask1
(SynchronizedObject synchronizedObject)
src/main/java/com/lock/object/SynchronizedObject.java:44
MethodTask1
(SynchronizedThis synchronizedThis)
src/main/java/com/lock/object/SynchronizedThis.java:39
MethodTask1
(SynchronizedMethod synchronizedMethod)
src/main/java/com/lock/object/SynchronizedMethod.java:34
MethodTask2
(SynchronizedClass synchronizedClass)
src/main/java/com/lock/class1/SynchronizedClass.java:54
MethodTask2
(SynchronizedObject synchronizedObject)
src/main/java/com/lock/object/SynchronizedObject.java:58
MethodTask2
(SynchronizedThis synchronizedThis)
src/main/java/com/lock/object/SynchronizedThis.java:53
MethodTask2
(SynchronizedMethod synchronizedMethod)
src/main/java/com/lock/object/SynchronizedMethod.java:48
MethodWriteTask
(CountDownLatch countDownLatch, ReentrantReadWriteLock lock)
src/main/java/com/lock/readwrite/WriteTask.java:19
MethodWriteTask
(ConditionDemo condition)
src/main/java/com/lock/condition/TestClass.java:10
Methodmain
(String[] args)
src/main/java/com/lock/spin/SpinLockTest.java:48
Methodmain
(String[] args)
src/main/java/com/lock/semaphore/SemaphoreTest.java:34
Methodmain
(String[] args)
src/main/java/com/lock/reentrant/ReentrantTest.java:68
Methodmain
(String[] args)
src/main/java/com/lock/readwrite/ReentrantReadWriteLockTest.java:13
Methodmain
(String[] args)
src/main/java/com/lock/class1/SynchronizedStaticMethod.java:46
Methodmain
(String[] args)
src/main/java/com/lock/class1/SynchronizedClass.java:64
Methodmain
(String[] args)
src/main/java/com/lock/condition/TestClass.java:39
Methodmain
(String[] args)
src/main/java/com/lock/object/SynchronizedObject.java:68
Methodmain
(String[] args)
src/main/java/com/lock/object/SynchronizedThis.java:63
Methodmain
(String[] args)
src/main/java/com/lock/object/SynchronizedMethod.java:58
Methodrun
()
src/main/java/com/lock/spin/SpinLockTest.java:20
Methodrun
()
src/main/java/com/lock/semaphore/SemaphoreTest.java:22
Methodrun
()
src/main/java/com/lock/reentrant/ReentrantTest.java:53
Methodrun
()
src/main/java/com/lock/readwrite/WriteTask.java:24
Methodrun
()
src/main/java/com/lock/readwrite/ReadTask.java:25
Methodrun
()
src/main/java/com/lock/class1/SynchronizedStaticMethod.java:32
Methodrun
()
src/main/java/com/lock/class1/SynchronizedStaticMethod.java:40
Methodrun
()
src/main/java/com/lock/class1/SynchronizedClass.java:44
Methodrun
()
src/main/java/com/lock/class1/SynchronizedClass.java:58
Methodrun
()
src/main/java/com/lock/condition/TestClass.java:14
Methodrun
()
src/main/java/com/lock/condition/TestClass.java:31
Methodrun
()
src/main/java/com/lock/object/SynchronizedObject.java:48
Methodrun
()
src/main/java/com/lock/object/SynchronizedObject.java:62
Methodrun
()
src/main/java/com/lock/object/SynchronizedThis.java:43
Methodrun
()
src/main/java/com/lock/object/SynchronizedThis.java:57
Methodrun
()
src/main/java/com/lock/object/SynchronizedMethod.java:38
Methodrun
()
src/main/java/com/lock/object/SynchronizedMethod.java:52