美文网首页
python深入系列(三):python并行编程

python深入系列(三):python并行编程

作者: justworld | 来源:发表于2019-10-02 18:23 被阅读0次

1、Lock和RLock

Lock:基本锁,只能加一次,加锁之后其余锁请求处于锁释放的等待中
RLock:Reentant Lock,可重入锁,可多次请求锁对应需要多次释放,这个重入是对单个线程而言,指一个线程可以多次请求锁而不被阻塞

2、线程交互对象

锁(Lock、RLock)、信号量(Semaphore)、条件(Condition)、事件(Event)、队列(Queue)、障碍(Barrier,等待线程数达到数量解封)

3、进程交互对象

队列(Queue)、管道(Pipe)、锁(Lock、RLock)、信号量(Semaphore)、条件(Condition)、事件(Event)、障碍(Barrier,等待进程数达到数量解封)、状态管理(Manager)、进程池(Pool)

4、MPI

mpi4py库, 没使用过,待补充...

5、cocurrent.futures模块

提供了线程池和进程池

6、Asyncio模块

事件循环、协程(@asyncio.coroutine)、Futures(asyncio.Future,和cocurrent.futures.Future,针对Asyncio事件循环做了很多定制)、Tasks(asyncio.Task)

7、分布式编程

Celery、SCOOP、Pyro4(远程方法调用)、PyCSP(通信顺序进程)、Disco(MapReduce)、RPyC(远程调用)

8、GPU编程

  • GPU特点是架构高度并行,擅长快速处理超大数据集
  • CUDA、OpenCL

9、避免GIL副作用

使用进程、numexpr、Cython(C语言扩展)、分布式计算模型等

(持续更新......)

——————————————————————————————

相关文章

网友评论

      本文标题:python深入系列(三):python并行编程

      本文链接:https://www.haomeiwen.com/subject/gfahxctx.html