## Uses of Interface
net.i2p.client.streaming.impl.TaskScheduler

- Packages that use TaskScheduler
  Package | Description
  --- | ---
  net.i2p.client.streaming.impl | Implementation of a TCP-like (reliable, authenticated, in order) set of sockets for communicating over the IP-like (unreliable, unauthenticated, unordered) I2P messages.

- - ### Uses of TaskScheduler in net.i2p.client.streaming.impl

    Classes in net.i2p.client.streaming.impl that implement TaskScheduler
    Modifier and Type | Class and Description
    --- | ---
    `(package private) class` | `SchedulerClosed` Scheduler used for after both sides have had their close packets ACKed, but the final timeout hasn't passed.
    `(package private) class` | `SchedulerClosing` Scheduler used for after both SYNs have been ACKed and both sides have closed the stream, but either we haven't ACKed their close or they haven't ACKed ours.
    `(package private) class` | `SchedulerConnectedBulk` Scheduler used for after our SYN has been sent and ACKed but one (or more) sides haven't closed the stream yet.
    `(package private) class` | `SchedulerConnecting` Scheduler used once we've sent our SYN but it hasn't been ACKed yet.
    `(package private) class` | `SchedulerDead` Scheduler used for after the final timeout has passed or the connection was reset.
    `(package private) class` | `SchedulerHardDisconnected` Scheduler used after we've locally done a hard disconnect, but the final timeout hasn't passed.
    `(package private) class` | `SchedulerImpl` Base scheduler
    `(package private) class` | `SchedulerPreconnect` Scheduler used for locally created connections where we have not yet sent the initial SYN packet.
    `(package private) class` | `SchedulerReceived` Scheduler used after receiving an inbound connection but before we have sent our own SYN.

    Methods in net.i2p.client.streaming.impl that return TaskScheduler
    Modifier and Type | Method and Description
    --- | ---
    `TaskScheduler` | SchedulerChooser.`getScheduler(Connection con)`