gpt4 book ai didi

java - 取消注册订阅者时的 Eventbus (greenrobot) 事件

转载 作者:行者123 更新时间:2023-11-30 01:16:11 26 4
gpt4 key购买 nike

我有一个要求,当所有订阅者都从特定事件中注销时,服务需要能够取消网络请求。我正在使用 Greenrobot EventBus,据我所知,没有内置任何东西可以在有人注销时发送事件。我在想我可以覆盖 EventBus 的取消注册方法并在调用时发布“UnsubscribedEvent”。然后服务可以监听这个事件,当它收到它时,它可以调用 hasSubscriberForEvent 来检查它是否应该取消请求。这听起来合理吗?或者有人有更好的建议吗?

最佳答案

您在问题中指定的内容应该可以正常工作。

或者,为了避免覆盖库的方法并在不知不觉中搞砸事情的复杂性,您可以这样做:

  1. 保留一个跟踪注册订阅者的计数器
  2. 在有新订阅或取消注册时增加/减少计数器(使用方法)
  3. 在计数器跟踪方法中,检查值计数器是否为 0 并取消网络请求(如果正在进行)

关于java - 取消注册订阅者时的 Eventbus (greenrobot) 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37834988/

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