并发并行同步异步GIL锁等概念

1.同步锁
2.死锁 递归锁
3.信号量和同步对象(了解)
4.队列 -----> 生产者消费者模型
5.进程

并发:是指系统具有处理多个任务(动作)的能力,一个线程执行多个任务,此时有IO切换
并行:是指系统具有同时处理多个任务(动作)的能力,多进程执行多任务
并行是并发的一个子集


同步:当进程执行到一个IO(等待外部数据)的时候,-------此时等就是同步,比如recv
异步:                                        -------不等:一直等到数据接收成功,再回来处理(效率高)


多进程+协程

问题:多核没利用上?

GIL:全局解释锁
        因为有GIL,所以同一时刻,只有一个线程被CPU执行


任务:IO密集型、计算密集型

总结:
1.对于IO密集型的任务,例如sleep,recv:python的多线程是有意义的
2.对于计算密集型的任务:python的多线程就不推荐了。but可以采用多进程+协程!!!

 

posted @ 2019-05-08 23:38  rayh  阅读(88)  评论(0)    收藏  举报