【问题标题】:Is a CPU fetch / execute cycle an :"event loop"CPU获取/执行周期是:“事件循环”
【发布时间】:2013-07-24 13:54:28
【问题描述】:

我正在阅读有关传递消息的事件循环,因为我必须为我正在进行的项目设计一个。为了更好地理解它,我试图将它类比为我更了解的其他事物,以帮助我理解。 CPU 的获取/执行周期是否与事件循环软件结构相当?如果不是,主要区别是什么(当然,除了直接存储在硬件中)。谢谢。

【问题讨论】:

  • 消息循环是什么意思?你是说事件循环吗?
  • 是的,我想是的。将编辑。

标签: data-structures cpu event-loop message-loop


【解决方案1】:

不,两者并不是很相似。

在事件循环中,系统有一个从中读取的队列,其他进程可以将项目添加到队列中。这些项目称为消息或事件,它们触发处理器的操作。通常系统允许多个读者在队列中等待,他们可以注册他们感兴趣的事件类型,主事件循环模块会适当地分发它们。

CPU 获取/执行周期只是按顺序依次遍历内存,读取每条指令 (fetch) 并执行适当的操作 (execute)。

主要区别在于事件可以异步添加到事件队列中,而 fetch/execute 是同步的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-19
    • 2022-11-19
    • 1970-01-01
    • 1970-01-01
    • 2015-04-24
    • 1970-01-01
    • 2010-09-19
    • 1970-01-01
    相关资源
    最近更新 更多