수색…


통사론

  • objectToSynchronizeOn.synchronized { /* code to run */}
  • synchronized {/* code to run, can be suspended with wait */}

객체에 동기화하다

synchronized 는 여러 스레드가 동일한 자원에 액세스하는 것을 방지하는 데 도움이되는 저수준 동시성 구조입니다. Java 언어를 사용하는 JVM 소개 .

anInstance.synchronized {
  // code to run when the intristic lock on `anInstance` is acquired
  // other thread cannot enter concurrently unless `wait` is called on `anInstance` to suspend
  // other threads can continue of the execution of this thread if they `notify` or `notifyAll` `anInstance`'s lock
}

object 의 경우에는 싱글 톤 인스턴스가 아닌 객체의 클래스에서 동기화 될 수 있습니다.

이것에 암묵적으로 동기화하라.

 /* within a class, def, trait or object, but not a constructor */
 synchronized {
   /* code to run when an intrisctic lock on `this` is acquired */
   /* no other thread can get the this lock unless execution is suspended with
    * `wait` on `this`
    */
 }


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow