RemoteCallbackList.BeginBroadcast Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Use #broadcast(Consumer) en su lugar para garantizar el control adecuado de los procesos congelados.
[Android.Runtime.Register("beginBroadcast", "()I", "GetBeginBroadcastHandler")]
public virtual int BeginBroadcast();
[<Android.Runtime.Register("beginBroadcast", "()I", "GetBeginBroadcastHandler")>]
abstract member BeginBroadcast : unit -> int
override this.BeginBroadcast : unit -> int
Devoluciones
Devuelve el número de interfaces de la difusión, con las que se va a usar #getBroadcastItem para determinar el intervalo de índices que puede proporcionar.
- Atributos
Comentarios
Use #broadcast(Consumer) en su lugar para garantizar el control adecuado de los procesos congelados.
Prepárese para empezar a realizar llamadas a las interfaces registradas actualmente. Esto crea una copia de la lista de interfaz, que puede recuperar elementos de mediante #getBroadcastItem. Tenga en cuenta que solo una difusión puede estar activa a la vez, por lo que debe asegurarse de llamarla siempre desde el mismo subproceso (normalmente mediante programación con Handler) o realizar su propia sincronización. Debe llamar cuando #finishBroadcast haya terminado.
Un bucle típico que entrega una difusión tiene este aspecto:
int i = interfaces.beginBroadcast();
while (i > 0) {
i--;
try {
interfaces.getBroadcastItem(i).somethingHappened();
} catch (RemoteException e) {
// The RemoteCallbackList will take care of removing
// the dead object for us.
}
}
interfaces.finishBroadcast();
Tenga en cuenta que este método solo se admite para #FROZEN_CALLEE_POLICY_UNSET. En el caso de otras directivas, use #broadcast(Consumer) en su lugar.
Java documentación para android.os.RemoteCallbackList.beginBroadcast().
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.