android - 有没有办法在 RxJava(2) 中跟踪谁在主题上调用了 onNext()?
问题描述
我正在使用 RxJava2 开发一个 Android 应用程序(虽然没关系),并且在一些单例中有一些PublishProcessor
s.
并且在整个项目中都有很多.onNext()
关于这些的调用。PublishProcessor
现在为了调试,我需要知道,在每次.onNext()
调用时,我的项目中的哪一行调用了 this .onNext()
。
在 RxJava(2) 中有没有一种方法可以实现这一点?
解决方案
啊,感谢@PhanVanLinh,我找到了一个适合我的解决方案。
(实际上它与 RxJava 几乎没有关系......)
您只需要使用打印堆栈跟踪Thread.currentThread.stackTrace
并将其打印到您自己的字符串里面doOnNext()
,但记得在之前 .observeOn()
这样做,以便线程不会切换,它必须停留在调用的原始线程.onNext()
,否则您将无法获得有意义的信息.
然后你就会知道调用了哪条线.onNext()
。
推荐阅读
- python - Python 正则表达式在分隔符之间重复捕获的组
- java - 在 Eclipse 2021 上导入库失败示例:org.apache.commons.dbcp.BasicDataSource
- c++ - 如何在该程序中添加一个循环以确保用户输入正数,如果负数让他们重新输入?
- node.js - 为什么 npm 显示 ERR!尝试在我的本地项目文件夹中安装 eslint 依赖项时编码 EPERM?
- python - 如何在 Django 中为多个模型创建表单字段?
- data-visualization - 这部分图表在 Vega-Lite 中叫什么?
- arrays - 对 C 处理字符串的方式感到困惑
- node.js - 是什么导致错误类型错误:文本不可迭代?- 网络爬虫 Puppeteer NodeJs
- postgresql - 我应该使用 distinct / distinct on 删除由 1:many 连接引起的重复项吗?
- azure - 访问使用 terraform 模块创建的特定存储帐户 ID