## org.mariadb.jdbc.internal.failover.thread
Class TerminableRunnable

    java.lang.Object
      org.mariadb.jdbc.internal.failover.thread.TerminableRunnable

All Implemented Interfaces:
  Runnable

Direct Known Subclasses:
  FailoverLoop

    public abstract class TerminableRunnable

extends Object
implements Runnable

Constructor Summary
`TerminableRunnable(ScheduledExecutorService scheduler, long initialDelay, long delay, TimeUnit unit)`

Method Summary
`void` `blockTillTerminated()` Unschedule next launched, and wait for the current task to complete before closing it.
`protected abstract void` `doRun()`
`boolean` `isUnschedule()`
`void` `run()`
`void` `unscheduleTask()` Unschedule task if active, and cancel thread to inform it must be interrupted in a proper way.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### TerminableRunnable

    public TerminableRunnable(ScheduledExecutorService scheduler,
                              long initialDelay,
                              long delay,
                              TimeUnit unit)

Method Detail

### doRun

    protected abstract void doRun()

### run

    public final void run()

  Specified by:
    `run` in interface `Runnable`

### blockTillTerminated

    public void blockTillTerminated()

  Unschedule next launched, and wait for the current task to complete before closing it.

### isUnschedule

    public boolean isUnschedule()

### unscheduleTask

    public void unscheduleTask()

  Unschedule task if active, and cancel thread to inform it must be interrupted in a proper way.

Copyright © 2017. All rights reserved.