class Watchdog implements Runnable {

  public Watchdog(String name, long timeout, TimeUnit unit) {
    this.name = name;
    if (timeout < 1) {
      throw new IllegalArgumentException(String.format("Invalid timeout: %d", timeout));
    }
    this.timeout = unit.toMillis(timeout);
  }

  public  Watchdog(String name, long timeout, TimeUnit unit);
  public  Watchdog(long timeout, TimeUnit unit);

}