Package-level declarations

Types

Link copied to clipboard

提供一个用于阻塞调用的调度器的供应商。

Link copied to clipboard

提供一个用于阻塞调用的调度器的供应商。

RejectedExecutionException 的扩展, 当 DefaultBlockingDispatcher 将会在追加任务被拒绝时抛出此异常并携带 runnableexecutor 信息供于外部用户捕获并处理.

Link copied to clipboard

阻塞API所使用的执行策略。

Link copied to clipboard

无作用域的阻塞API所使用的执行策略。

Properties

Link copied to clipboard

默认的异步调用(Java异步,例如 CompletableFuturerunInAsync)上下文。

Link copied to clipboard

使用在非协程环境下的异步API(例如 runInAsync )中的默认调度器。 会在首次被获取的时候进行实例化。

Link copied to clipboard

runInBlocking 中使用的默认上下文实例。

Link copied to clipboard

使用在阻塞API(例如 runInBlocking )或非Java协程环境中的默认调度器。 会在首次被获取的时候进行实例化。

Link copied to clipboard

使用 Executors.newVirtualThreadPerTaskExecutor 构建的全局虚拟线程“线程池”。 如果不支持虚拟线程则会抛出 UnsupportedOperationException

Functions

Link copied to clipboard
fun <T> runInAsync(scope: CoroutineScope, context: CoroutineContext = EmptyCoroutineContext, block: suspend CoroutineScope.() -> T): CompletableFuture<T>

执行一个异步函数,得到 CompletableFuture.

Link copied to clipboard
fun <T> runInBlocking(context: CoroutineContext = DefaultBlockingContext, block: suspend CoroutineScope.() -> T): T

在simbot中提供的 runBlocking 包装。

Link copied to clipboard
fun <T> runInNoScopeBlocking(context: CoroutineContext = DefaultBlockingContext, block: suspend () -> T): T

在simbot中提供的 runBlocking 包装。

Link copied to clipboard
fun <T> runInNoScopeTimeoutBlocking(timeout: Long, context: CoroutineContext = DefaultBlockingContext, block: suspend () -> T): T

如果超时,则抛出 TimeoutException.

Link copied to clipboard
fun <T> runInPromise(context: CoroutineContext = EmptyCoroutineContext, block: suspend CoroutineScope.() -> T): Promise<T>

使用一个内部默认的 CoroutineScope 执行一个异步函数,得到 Promise.

fun <T> runInPromise(scope: CoroutineScope, context: CoroutineContext = EmptyCoroutineContext, block: suspend CoroutineScope.() -> T): Promise<T>

执行一个异步函数,得到 Promise.

Link copied to clipboard
fun <T> runInTimeoutBlocking(timeout: Long, context: CoroutineContext = DefaultBlockingContext, block: suspend CoroutineScope.() -> T): T

如果超时,则抛出 TimeoutException.

Link copied to clipboard

设置一个 runInBlocking 函数的实际调度逻辑。

Link copied to clipboard