如何在 Scala 中创建同步对象方法

How to create a synchronized object method in scala

scala 是否支持同步对象 (/static) 方法?我正在寻找:

synchronized def myObjectMethod(): <SomeReturnType> = {
.. 
 }

如果不支持,scala 中的等价物是什么?

synchronized在scala中只是一个方法1。所以你可以做

def myObjectMethod: SomeReturnType = synchronized {
  // stuff
}

其实是编译器注入的一种特殊方法,更多细节在这里:How is the synchronized method on AnyRef implemented?