Implement OnIdle, close #22

It's recommended to use 'm_delay' in execute config