随笔分类 - 并发编程
摘要:阻塞IO模型(blocking IO) 因为通信的时候,数据是先复制到系统,再通过网线发送的,所以,recv在等待接受数据的时候,会先跟内核/操作系统要数据。进而出现两个等待过程,一个是系统等待对方发送数据、一个是应用程序等待系统的数据拷贝过来。 非阻塞IO(unLocking IO) 非阻塞IO是
阅读全文
摘要:1、死锁 定义; 类似两个人分别被囚禁在两间房子里,A手上拿着的是B囚禁房间的钥匙,而B拿着A的钥匙,两个人都没法出去,没法给对方开锁,进而造成死锁现象。具体例子代码如下: # -*-coding:utf-8 -*- from threading import Thread,Lock,RLock i
阅读全文
摘要:IPC机制:进程间通信或跨进程通信,指两个进程之间进行数据交换。 模型:生产者+媒介(队列)+消费者(用到的就是IPC机制)这里队列用JoinableQueue这个模块,该模块有以下几个方法: JoinableQueue()内有自带计数器,每当队列放一个数据的时候,会自动+1 task_done()
阅读全文
摘要:多道技术 1、并发:看起来像是同时运行,实际,是靠不断切换任务来实现的2、并行:同时运行多个任务 3、时间复用:利用中间空闲时间做其他事情。比如;做饭、洗衣服、烧水,就可以先洗好米放锅里煮,然后去把衣服丢洗衣机洗,然后再去烧水,这样就不用等饭煮好,再去洗衣服,烧水。4、空间复用:多个程序共用一套计算
阅读全文

浙公网安备 33010602011771号