override fun interceptContinuation()

in hot-reload-core/src/main/kotlin/org/jetbrains/compose/reload/core/WorkerThreadDispatcher.kt [20:38]


    override fun <T> interceptContinuation(continuation: Continuation<T>): Continuation<T> {
        return Continuation(continuation.context) { result ->
            /* Fast path: We can invoke immediately */
            if (Thread.currentThread() == workerThread && isImmediate) {
                continuation.resumeWith(result)
                return@Continuation
            }


            /* We dispatch to the worker thread */
            val future = workerThread.invoke {
                continuation.resumeWith(result)
            }
            val exception = future.getOrNull()?.exceptionOrNull()
            if (exception is RejectedExecutionException) {
                continuation.resumeWithException(exception)
            }
        }
    }