首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

一直不明白“异步”与“同步”有关问题,求指教

2012-02-26 
一直不明白“异步”与“同步”问题,求指教一直不明白“异步”与“同步”问题,求指教。在汤子赢《计算机操作系统》的第

一直不明白“异步”与“同步”问题,求指教
一直不明白“异步”与“同步”问题,求指教。

在汤子赢《计算机操作系统》的第二章 进程同步 P48面看到这么一句话:
生产者与消费者问题:
“尽管所有的生产者进程和消费者进程都是以异步方式运行的,但他们之间必须保持同步,即不允许消费者进程到一个空缓冲区去取产品,也不允许生产者进程向一个已装满产品的缓冲区投放产品”

求牛人讲解下同步和异步以及其关系,和上面这句话的意思,谢谢了。

[解决办法]
举个例子。。。
同步就是你妈妈喊你回家吃饭,然后她会进入阻塞状态不会干别的事等着直到你回到家准备吃饭。。
异步就是你妈妈喊你回家吃饭,说完可以立马干别的事去了,你愿意什么时候回家吃饭就什么时候回家吃饭,对你妈妈的活动不造成影响。。。
[解决办法]
这句话里面的同步 异步的意思是

生产者 消费者 就像 两个 跑步者

异步就是它们谁跑得快 跑到哪是不确定的

同步就是你控制它们
[解决办法]
你上这个问题只是一个特定环境的一种特定算法而已。

google 同步 异步
[解决办法]
上面那句话的意思就是生产者和消费者虽然行动模式理论上应该是异步的,也就是生产者生产产品不会因为去等待消费者的消费而等待而造成相互的影响,但是当生产者的商品被消耗殆尽了之后消费者如果想要产品的话必须等待生产者来生产产品,这就造成了消费者的“阻塞”状态,也就是说消费者和生产者产生了直接的联系
[解决办法]
异步就像发短信一样
同步就行打电话一样
[解决办法]
同步就是 立竿见影

异步就是 据说是干了,但是什么时候干完再说。
[解决办法]
从书上来理解的话就是,异步是两个做事不是同时做的,至于什么时候做得看各自情况。这里同步其实可以理解为协调合作,就是要商量好,比如连个人脚绑在一起走路,就要先商量好先迈哪只脚。
[解决办法]
这么解释吧:
同步:进程A和进程B,进程A对B发出一个请求后,等待B的响应。待B响应后再继续完成后面的事情

异步:进程A和进程B,进程A对B发出一个请求后,继续完成后面的事情(即不等待),B响应后,通知A,然后A再来处理。

结合你说的这句话:
生产者进程和消费者进程 是以异步的方式进行,一个进行生产,一个进行消费,谁也不用等谁,不需要生产者生产出一个物品后,非要等消费者拿走后才能继续进行生产。 而这里同步是一个条件限制,在这个时候他们必须是同步的,即当缓冲池是空的时候,消费者必须等待有物品才能取,缓冲池满了,生产者必须等有空位置才能继续放物品。

综上,把异步理解成不用等待,同步理解成需要等待,就容易理解了!

热点排行