SubwayTooter-Android-App/app/src/main/java/jp/juggler/subwaytooter/util/WaitNotifyHelper.java

33 lines
807 B
Java

package jp.juggler.subwaytooter.util;
import androidx.annotation.NonNull;
// このクラスをkotlinに変換しないこと
// Kotlin は wait/notify をサポートしてない
// しかしConcurrent ライブラリには notify() を直接表現できるクラスがない
// 仕方がないのでJavaコード経由でwait/notifyを呼び出す
@SuppressWarnings("SynchronizationOnLocalVariableOrMethodParameter")
public class WaitNotifyHelper {
public static void waitEx( @NonNull Object obj, long ms ){
try{
synchronized( obj ){
obj.wait( ms );
}
}catch( InterruptedException ignored ){
}
}
public static void notifyEx( @NonNull Object obj ){
try{
synchronized( obj ){
obj.notify();
}
}catch( Throwable ignored ){
}
}
}