public void start() {
        if (mShouldSample.get()) {
            return;
        }
        mShouldSample.set(true);

        HandlerThreadFactory.getTimerThreadHandler().removeCallbacks(mRunnable);
        HandlerThreadFactory.getTimerThreadHandler().postDelayed(mRunnable,
                BlockCanaryInternals.getInstance().getSampleDelay());
    }
{@link AbstractSampler} sampler defines sampler work flow.
blockcanary-analyzer/src/main/java/com/github/moduth/blockcanary/AbstractSampler.java