【发布时间】:2018-10-25 13:47:50
【问题描述】:
短要求:能够创建协程上下文,该上下文将仅在单线程中执行(例如,没有并行性)。
附加要求:这些任务最好使用现有的 CommonPool(例如线程池)
实际上 kotlin 协程有 newSingleThreadContext 方法,它将创建单独的线程并将所有任务安排到其中。但是,这是专用线程,因此大约 1000 个这样的上下文将需要大量资源。
因此,我希望上下文具有以下特征:
- 最多可以同时执行一项任务
- 此上下文应重用任何其他上下文(例如父上下文)。例如,上下文不应包含额外的线程
【问题讨论】:
标签: java multithreading kotlin threadpool