private static HandlerPoster getUiPoster() {
        if (uiPoster == null) {
            synchronized (Run.class) {
                if (uiPoster == null) {
                    // This time is 1000/60 (60fps)
                    // And the async dif to sync method
                    uiPoster = new HandlerPoster(Looper.getMainLooper(), 16, false);
                }
            }
        }
        return uiPoster;
    }
Get the Ui thread Handler

@return Handler
caprice/kit-handler/src/main/java/net/qiujuer/genius/kit/handler/Run.java