我正在考虑使用 robospice 库。从文档/示例中我看到请求在后台线程中执行,在 UI 线程中执行监听器。
我想知道是否有可能在非 UI 线程上通过 robospice 运行监听器?
假设我有请求 A 和 B 以及监听器(可以在 robospice 上执行)以防万一请求 B 取决于请求 A 的结果。所以当 A 完成时,它的监听器执行请求 B。没关系,但是如果我想读取用于请求 B 的文件的一部分,那么这会阻塞 UI几毫秒,因为 A 的监听器在 UI 线程上执行。
我可以通过使用 for 例如来解决这个问题HandlerThread,但我不喜欢这样 UI 将充当 A 和 B 之间的某种代理。
那么,可以在 UI 线程之外运行 robospice 监听器吗?
最佳答案
不,这在 RoboSpice 中并不容易。
唯一的方法是创建一个你自己的新 SpiceService 并传递给它一个带有自定义 DefaultRequestListenerNotifier
的自定义 RequestProcessor| .
您的用例是什么?
关于android - 可以在非 UI 线程中运行 Robospice 监听器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22862053/