public abstract class AsyncObservable extends Object
Observable, com otimizações:
O disparo dos observadores é feito em uma thread separada, para não bloquear o fluxo de execução de quem está notificando.
Caso haja a necessidade de que a notificação dos observadores seja síncrona,
é possível utilizar o notifyObserversSync().
| Modifier and Type | Class and Description |
|---|---|
static interface |
AsyncObservable.AsyncObserver
Interface a ser observada por quem pretende receber notificações de objetos
AsyncObservable. |
| Constructor and Description |
|---|
AsyncObservable() |
| Modifier and Type | Method and Description |
|---|---|
void |
addObserver(AsyncObservable.AsyncObserver observer)
Associar um novo observador assíncrono neste objeto.
|
void |
notifyObservers()
Executa os eventos
AsyncObservable.AsyncObserver.event(AsyncObservable) de todos os
observadores associados, em uma thread separada. |
void |
notifyObserversSync()
Realizar a notificação dos observadores, porém de forma bloqueante.
|
boolean |
removeObserver(AsyncObservable.AsyncObserver observer)
Remover uma instância de observador da coleção de observadores
associados à instância de
AsyncObservable. |
protected void |
setChanged()
Mesma semântica do
Observable.setChanged() |
protected final void setChanged()
Observable.setChanged()public void addObserver(AsyncObservable.AsyncObserver observer)
observer - Instância do observador.public boolean removeObserver(AsyncObservable.AsyncObserver observer)
AsyncObservable.observer - Instância a ser removida.public void notifyObserversSync()
A notificação só ocorre de fato se setChanged() tiver sido chamado
internamente depois da última notificação.
public void notifyObservers()
AsyncObservable.AsyncObserver.event(AsyncObservable) de todos os
observadores associados, em uma thread separada.
Este método não é bloqueante.
A notificação só ocorre de fato se setChanged() tiver sido chamado
internamente depois da última notificação.
Copyright © 2014 Tecgraf/PUC-Rio. All Rights Reserved.