gpt4 book ai didi

javascript - PubSub/Observer 模式中的排队事件

转载 作者:行者123 更新时间:2023-11-28 02:43:54 24 4
gpt4 key购买 nike

我总是发现直接进入示例更容易。

object.on('eventone', function() {
console.log('eventone - listener one');
object.trigger('eventtwo');
});
object.on('eventone', function() {
console.log('eventone - listener two');
});
object.on('eventtwo', function() {
console.log('eventtwo');
});
object.trigger('eventone');

在大多数 PubSub 实现中,这会导致以下日志顺序:

  1. eventone - 监听者一
  2. 事件二
  3. eventone - 监听器二

过去,这曾引发过该序列的语义问题。通常,开发人员会假设“eventone”的所有监听器都在“eventtwo”开始之前触发,这可能会进一步引入序列逻辑错误。更合理的日志顺序可能是:

  1. eventone - 监听者一
  2. eventone - 监听器二
  3. 事件二

所以我想问题是 - 为什么大多数实现不遵循事件队列?以及使用它和不使用它可能产生的影响是什么。

干杯!

最佳答案

Pubsub 的目的是使一个订阅者不依赖其他订阅者、不知道其他订阅者或受到其他订阅者的阻碍。以下是探讨每种方法的优缺点的几个问题:

关于javascript - PubSub/Observer 模式中的排队事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12222889/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com