ENABLE_ASYNC_UNBIND

private const val ENABLE_ASYNC_UNBIND: Boolean = false

Whether to enable asynchronously unbinding the allocated DockerDaemon from the runner.

By default, execWithInput will synchronously unbind the allocated DockerDaemon from the runner. If this field is set to true, execWithInput will start a coroutine which asynchronously unbinds the allocated DockerDaemon from the runner, only waiting on the coroutine when this runner is being closed. This will likely decrease the latency and increase the throughput of the pipelines, as resources will be freed earlier in the process (likely before report generation).

One caveat is this optimization uses runBlocking in the implementation of closeImpl, which may cause deadlocks due to an unknown reason.