コード例 #1
0
ファイル: ThinLock.java プロジェクト: jaggerlink/cs356
 @Entrypoint
 @Inline
 @NoNullCheck
 @Unpreemptible
 public static void inlineLockWithoutRaceDetInstr(Object o, Offset lockOffset) {
   inlineLockHelper(o, lockOffset);
 }
コード例 #2
0
ファイル: ThinLock.java プロジェクト: jaggerlink/cs356
  @NoInline
  @NoNullCheck
  @Unpreemptible
  public static void inlineLockNoInline(Object o, Offset lockOffset) {
    inlineLockHelper(o, lockOffset);

    // RaceDet: instrumentation for acquire
    if (RaceDet.syncOps() && RaceDet.isApplicableThread()) {
      if (getRecursionCountLocked(o, lockOffset) == 1) {
        Algo.acquire(o);
      }
    }
  }