【问题标题】:how to find out method is executed?如何找出方法被执行?
【发布时间】:2019-01-30 19:57:02
【问题描述】:

假设我们有以下方法,它将在不同的时间被调用,例如 10 次:

EventBus.getDefault().post(Id_of_Media_Group);

另一个类中的接收器方法将按顺序类似于以下方法(因为使用了 ThreadNode.MAIN_ORDERED):

    @Subscribe(threadMode = ThreadMode.MAIN_ORDERED)
    public void refreshList(ExampleClass example) {
    // doing a fairly heavy duty
}

这意味着将使用一个队列(调用)来完成,并且每个队列的元素(调用函数)可能需要一些时间才能完成,我的问题是,我如何理解每个工作或所有这些工作何时会使用 Listener 完成了吗? 我的 Listener 必须在以前的方法类中。

【问题讨论】:

    标签: java android multithreading queue event-bus


    【解决方案1】:

    在你的接收器方法中使用 AtomicInteger 并在它被调用时递增它 最后,您可以检查该原子以查看它被调用了多少次

    【讨论】:

    • 不,这个Listener应该在sender方法端,我的意思是当receiver端的JOB完成后,应该立即注意到sender
    • 请粘贴示例代码或详细说明
    【解决方案2】:

    这很简单,在每个作业中都制作日志,如果您的日志执行与否,请在 Logcat 中查看它。这里是例子,Log.d("checking the jobs","jobs 1 is done");

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-27
      • 1970-01-01
      • 2022-11-12
      • 2013-03-18
      • 2013-12-24
      • 2012-02-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多