launch 方法有 3 个参数:context,start,block。分别是 CoroutineContext、CoroutineStart 和 suspend CoroutineScope.() -> Unit 类型。 CoroutineContext 是协程上下文,通常用来指定协程的执行线程。 CoroutineStart 是协程启动方式,默认是 DEFAULT 方式。DEFAULT 表示协程立即执行。还有一个 LAZY 方式,表示协程懒加载执行。
multiprocessing.dummy的 API 完全等同于 multiprocessing 包, 但是它实际上是一个 threading 库的封装。(也就是说是多线程的) 如果一个功能你不确定用多进程还是多线程,那就用 multiprocessing 的 API 写,然后用 dummy 的多线程和原生的多进程比较,哪个快就用哪个。这样需要改的只是一个导包语句。 参考...
在调用前用lock(object),结束后使用unlock解锁,object为自己声明的一个对象