CoroutineScope#safeActor

This commit is contained in:
InsanusMokrassar committed 2020-11-02 21:32:04 +06:00
1 parent 6f5c6e5ebe
commit dccb479c3c
2 files changed
+13

No files matched your search

@@ -17,3 +17,15 @@ fun <T> CoroutineScope.actor(
return channel
}
inline fun <T> CoroutineScope.safeActor(
channelCapacity: Int = Channel.UNLIMITED,
noinline onException: ExceptionHandler<Unit> = {},
crossinline block: suspend (T) -> Unit
): Channel<T> = actor(
channelCapacity
) {
safely(onException) {
block(it)
}
}