Actually, this article is an extended one for the last ‘State Machine for Multi-thread Object’. In that article, a scenario of multi-thread object is dressed to described the importance of status machine usage. Operation requests could be rejected if the target object is not in expected status. It normally occurs in the object that maintains its own job/event thread to deal with the operations that could not be executed and completed intermediately. By the use of that ‘reject’ strategy, we could ensure the object not response the invalid request, but what if the requirement is ‘postpone’, which means if the object is not in valid status(such as working instead of idle), operation requests should be postpone until the instead simply throw away? Here we need a event queue/loop to cache the operation request/event until the object is idle, just like a data buffer. In this the event queue could be introduced at first, then event loop in the future.