diff options
Diffstat (limited to 'app/src/main/java/moe/yuuta/ext/HandlerThreadExecutor.java')
-rw-r--r-- | app/src/main/java/moe/yuuta/ext/HandlerThreadExecutor.java | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/app/src/main/java/moe/yuuta/ext/HandlerThreadExecutor.java b/app/src/main/java/moe/yuuta/ext/HandlerThreadExecutor.java new file mode 100644 index 0000000..d6c51bc --- /dev/null +++ b/app/src/main/java/moe/yuuta/ext/HandlerThreadExecutor.java @@ -0,0 +1,26 @@ +package moe.yuuta.ext; + +import android.os.Handler; +import android.os.Looper; +import android.util.Log; +import androidx.annotation.Nullable; + +import java.util.concurrent.Executor; + +/** + * https://stackoverflow.com/a/21256419/6792243 + */ +public class HandlerThreadExecutor implements Executor { + private final Handler mHandler; + public HandlerThreadExecutor(@Nullable Handler optionalHandler) { + mHandler = optionalHandler != null ? optionalHandler : new Handler(Looper.getMainLooper()); + } + + @Override + public void execute(Runnable command) { + Log.d("Debug", "execute: " + command.toString()); + mHandler.post(command); + Log.d("Debug", "done executing"); + // + } +}
\ No newline at end of file |