开发者社区> 问答> 正文

如何在我的ThreadPoolExecutor上创建自定义的Kotlin协程分派器?

在迁移到科特林的过程中,出现了问题。 由于不同的原因,我们已经有了一些ThreadPools。 如何在现有的ThreadPool上执行协程?

例如此代码:

    suspend fun fetchMedia(): Flow<MediaItem> {
        return withContext(Dispatchers.IO) {...} 
    }

如何将Dispatchers.IO替换为我自己的ThreadPoolExecutor?

问题来源:Stack Overflow

展开
收起
montos 2020-03-27 22:38:55 868 0
1 条回答
写回答
取消 提交回答
  • 您可以使用Executor ThreadPools对其进行调用asCoroutineDispatcher(),如下所示:

    suspend fun fetchMedia(): Flow<MediaItem> {
        return withContext(myThreadPool.asCoroutineDispatcher()) {...} 
    }
    

    回答来源:Stack Overflow

    2020-03-27 22:39:14
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
阿里云MaxCompute百问百答 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载