android有序广播是原子的吗?如果不是这样的广播如何实现原子性?

时间:2018-06-15 09:44:20

标签: android android-broadcast android-broadcastreceiver

假设有4 BroadcastReceivers并且有一个应用程序向所有人发送Ordered Broadcast。所有四个广播接收器都在各自独立的过程中。如果两者之间出现问题(例如,在onReceive方法之一中出现故障),如何确保有序Android广播的原子性?

是否取决于用例或者可以采用一般机制?

更新

Atomicity对于有序广播的确切含义,我只能猜测。例如,如果正在接收器中执行一系列事务,是否可以在两者之间的任何故障时还原所有事务? 在这种情况下谈论Atomicity是否有意义?

1 个答案:

答案 0 :(得分:1)

Android依次将有序广播发送到每个BroadcastReceiver。如果出现问题,Android会通过将有序广播发送到下一个BroadcastReceiver来继续。

Android处理来自系统进程的有序广播,因此即使接收方进程之一崩溃,Android仍可以继续将广播传递到下一个BroadcastReceiver

这能回答您的问题吗?我在此使用@CommonsWare,因为在这种情况下我不知道您所说的“原子性”是什么。