kanewolf :
Usually the language you are using has a timer available. You set it up to asynchronously notifiy you when the timer expires. If something happens in your game that should reset the timer, you cancel it and start a new timer when needed. If you get the timer interrupt, then you take appropriate steps.
i dont meant to be annoying
but what I mean is. for example in my game. theres a question that need to be answer in 30 seconds. if you fail to answer in given time , the other player will have the chance to answer.