Lock.withLock和Kotlin中同步的区别

两者之间是否有差异(除了偏好)?

someLock.withLock { sharedResource.operation() } 

 synchronized(someLock) { sharedResource.operation() } 

在Kotlin?

ReentrentLock的扩展可以在像ReentrentLock这样的Lock实例上ReentrentLock ,而synchronized可以和任何对象一起使用。

从技术上讲,只要你为所有相关的代码块使用相同的对象,并且需要相互同步