- 已装运
- 2026年9月6日 23:55 UTC
- 作者
- Kamo
- 提交
- 359d620
一个IMAP IDLE的听众是唯一能注意到消息到达的东西;它 发布电子邮件.inbox.<addr>, 也就是最终要求 Media Service 的 打个电话 这些听众是由浏览器用户开始的 邮件 WebSocket 并关闭了最后一个标签——所以观察到一个邮箱 只是在有人在看的时候 没有浏览器打开任何信息 看着收件箱,没有发表任何消息,电话从未被告知. 成员 报告发现新邮件的唯一办法是打开收件箱并查看 这是完全正确的:没有其他办法可以到达他们那里。 因此,IDLE的所有权不再是一个WebSocket会话的财产。 邮箱IdleService 持有听众和数谁想要每个邮箱 查看; MobileMailbox Watcher 代表任何成员保留一个 倾听者说下去。 一个邮箱现在可以合法地被观看两次整个集群——这里和这里。 由浏览器的收听者在另一个播客舱上——每个收听者报告相同 到达。 MobileMailPushSender 承认信件本身的重复 身份和嗡嗡声一次;它的崩溃键是 System.nanoTime (), 唯一每个 而不是每个消息, 这会让两个听众看起来像 下游每个门都收到两条信息 相反,协调听众 租借给一个听者悄悄死去的舱员 没有人在看邮箱——这是为了防止这种失败.