After reading the documentation (DOH) i found the solution
// Summary:
// Blocks the current thread until the current System.Threading.WaitHandle receives
// a signal, using a 32-bit signed integer to specify the time interval.
//
// SNIP SNIP
//
// Returns:
// true if the current instance receives a signal; otherwise, false.
//
// SNIP SNIP
public virtual bool WaitOne(int millisecondsTimeout);