suspend fun <T> awaitEvent(block: (h: Handler<T>) -> Unit): T
Run an asynchronous block and awaits the completion.
The block is executed with a Handler<T> argument that shall be called once.
When the handler is called, awaitEvent returns the value that the handler received.
This future can be passed to Vert.x asynchronous method:
val s = awaitEvent { handler ->
server.setTimer(1000, handler)
}
The coroutine will be blocked until the event occurs, this action do not block vertx's eventLoop.