processEventByLaunch

fun StateMachine.processEventByLaunch(event: Event, argument: Any? = null, coroutineContext: CoroutineContext = EmptyCoroutineContext, coroutineStart: CoroutineStart = CoroutineStart.DEFAULT)

Processes event in async fashion (using launch() to start new coroutine).

This API requires StateMachine's CoroutineScope so it throws if called on machines created by createStdLibStateMachine.

This method is not suspendable like original StateMachine.processEvent, so it can be called from any context easily.