Lock.java和LockSupport.java:我们拥有LockSupport的目的是什么?

问题描述 投票:1回答:1

我在多线程编程中使用了基本的object.wait()object.notify() , object.notifyAll()

我知道我们有软件包java.util.concurrent,并且有java.util.concurrent.locks软件包。具体来说,在java.util.concurrent.locks中,我们具有:ConditionLockLockSupport(以及其他)。

我在线阅读了此软件包,并了解了LockCondition的基础。但是,我不理解LockSupport。我进行了搜索以了解LockSupport,但是没有找到任何相关信息可以帮助我了解其用途。我已经看到LockSupport中有park()unPark()等方法。但是,我没有得到LockSupport的目的是什么,它似乎和Lock差不多一样?

任何人都可以帮助我了解为什么我们有LockSupport以及Lock没有做什么。

java multithreading locks
1个回答
0
投票

这是具有较低级别机制的帮助程序类。除非您想编写自己的高级并发结构,否则可能不会使用它。还有其他帮助程序类,例如java.util.concurrent.locks.AbstractQueuedSynchronizer,它们为you更可能使用的类(例如AQS等)提供其他机制(例如,在ReentrantLock情况下等待队列)。

© www.soinside.com 2019 - 2024. All rights reserved.