--- title: net.axay.kspigot.runnables - --- //[KSpigot](../index.md)/[net.axay.kspigot.runnables](index.md) # Package net.axay.kspigot.runnables ## Types | Name| Summary| |---|---| | [ChainedRunnablePart](-chained-runnable-part/index.md)| [jvm]
Content
abstract class [ChainedRunnablePart](-chained-runnable-part/index.md)<[T](-chained-runnable-part/index.md), [R](-chained-runnable-part/index.md)>(**sync**: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html))


| [ChainedRunnablePartFirst](-chained-runnable-part-first/index.md)| [jvm]
Content
class [ChainedRunnablePartFirst](-chained-runnable-part-first/index.md)<[R](-chained-runnable-part-first/index.md)>(**runnable**: () -> [R](-chained-runnable-part-first/index.md), **sync**: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)) : [ChainedRunnablePart](-chained-runnable-part/index.md)<[Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html), [R](-chained-runnable-part-first/index.md)>


| [ChainedRunnablePartThen](-chained-runnable-part-then/index.md)| [jvm]
Content
class [ChainedRunnablePartThen](-chained-runnable-part-then/index.md)<[T](-chained-runnable-part-then/index.md), [R](-chained-runnable-part-then/index.md)>(**runnable**: ([T](-chained-runnable-part-then/index.md)) -> [R](-chained-runnable-part-then/index.md), **sync**: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), **previous**: [ChainedRunnablePart](-chained-runnable-part/index.md)<*, [T](-chained-runnable-part-then/index.md)>) : [ChainedRunnablePart](-chained-runnable-part/index.md)<[T](-chained-runnable-part-then/index.md), [R](-chained-runnable-part-then/index.md)>


| [KSpigotRunnable](-k-spigot-runnable/index.md)| [jvm]
Content
abstract class [KSpigotRunnable](-k-spigot-runnable/index.md)(**counterUp**: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)?, **counterDownToOne**: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)?, **counterDownToZero**: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)?) : BukkitRunnable


## Functions | Name| Summary| |---|---| | [async](async.md)| [jvm]
Brief description


Starts an asynchronous task.


Content
fun [async](async.md)(runnable: () -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)): BukkitTask


| [firstAsync](first-async.md)| [jvm]
Content
fun <[R](first-async.md)> [firstAsync](first-async.md)(runnable: () -> [R](first-async.md)): [ChainedRunnablePartFirst](-chained-runnable-part-first/index.md)<[R](first-async.md)>


| [firstDo](first-do.md)| [jvm]
Content
fun <[R](first-do.md)> [firstDo](first-do.md)(sync: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), runnable: () -> [R](first-do.md)): [ChainedRunnablePartFirst](-chained-runnable-part-first/index.md)<[R](first-do.md)>


| [firstSync](first-sync.md)| [jvm]
Content
fun <[R](first-sync.md)> [firstSync](first-sync.md)(runnable: () -> [R](first-sync.md)): [ChainedRunnablePartFirst](-chained-runnable-part-first/index.md)<[R](first-sync.md)>


| [sync](sync.md)| [jvm]
Brief description


Starts a synchronous task.


Content
fun [sync](sync.md)(runnable: () -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)): BukkitTask


| [task](task.md)| [jvm]
Brief description


Starts a new BukkitRunnable.


Content
fun [task](task.md)(sync: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), delay: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html), period: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)?, howOften: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)?, safe: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), endCallback: () -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)?, runnable: ([KSpigotRunnable](-k-spigot-runnable/index.md)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)?)


| [thenAsync](then-async.md)| [jvm]
Content
fun <[T](then-async.md), [R](then-async.md), [U](then-async.md)> [ChainedRunnablePart](-chained-runnable-part/index.md)<[T](then-async.md), [R](then-async.md)>.[thenAsync](then-async.md)(runnable: ([R](then-async.md)) -> [U](then-async.md)): [ChainedRunnablePartThen](-chained-runnable-part-then/index.md)<[R](then-async.md), [U](then-async.md)>


| [thenDo](then-do.md)| [jvm]
Content
fun <[T](then-do.md), [R](then-do.md), [U](then-do.md)> [ChainedRunnablePart](-chained-runnable-part/index.md)<[T](then-do.md), [R](then-do.md)>.[thenDo](then-do.md)(sync: [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html), runnable: ([R](then-do.md)) -> [U](then-do.md)): [ChainedRunnablePartThen](-chained-runnable-part-then/index.md)<[R](then-do.md), [U](then-do.md)>


| [thenSync](then-sync.md)| [jvm]
Content
fun <[T](then-sync.md), [R](then-sync.md), [U](then-sync.md)> [ChainedRunnablePart](-chained-runnable-part/index.md)<[T](then-sync.md), [R](then-sync.md)>.[thenSync](then-sync.md)(runnable: ([R](then-sync.md)) -> [U](then-sync.md)): [ChainedRunnablePartThen](-chained-runnable-part-then/index.md)<[R](then-sync.md), [U](then-sync.md)>