I think, in general, this is probably not possible or easy, since you'd need multiple processing threads to track another running process, which sounds nasty.
However, it might be possible if there's some detail on how exactly are you are calling the command. For example, if it's infinitely looping a call or something, you could set up a persistent timer and then throw an error when the timer expires.
But this depends on your specific situation; there's no general way to do this.