标签: concurrency haskell
RWH书中列出了以下内容:
如果Chan为空,readChan会阻塞,直到有值要读取。 writeChan函数永远不会阻塞:它会将新值写入Chan 立即
Chan
readChan
writeChan
我不清楚的是,对writeChan的调用是否会覆盖已存在的消息(假设某些消息尚未读取),或者是否会按正确的顺序对消息进行排队,以便未读消息没有丢失?
答案 0 :(得分:4)
排队等候。 Chan是一个频道,邮件可以在其中排队。相比之下,MVar可以只取一个值,表现为变量而不是队列。
MVar