public class UpdateRunner extends Object
Modifier and Type | Field and Description |
---|---|
private ConcurrentLinkedQueue<Runnable> |
queue
The queue of pending updates
|
private Object |
sync
Owner/Synchronization object
|
private UpdateSynchronizer |
synchronizer
Synchronizer that can block events from being executed right away.
|
Modifier | Constructor and Description |
---|---|
protected |
UpdateRunner(Object sync)
Construct a new update handler
|
Modifier and Type | Method and Description |
---|---|
void |
clear()
Clear queue.
|
void |
invokeLater(Runnable r)
Add a new update to run at any appropriate time.
|
boolean |
isEmpty()
Check whether the queue is empty.
|
void |
runQueue()
Run the processing queue now.
|
void |
synchronizeWith(UpdateSynchronizer newsync)
Set a new update synchronizer.
|
void |
unsynchronizeWith(UpdateSynchronizer oldsync)
Remove an update synchronizer
|
private Object sync
private final ConcurrentLinkedQueue<Runnable> queue
private UpdateSynchronizer synchronizer
protected UpdateRunner(Object sync)
sync
- Object to synchronize onpublic void invokeLater(Runnable r)
r
- New runnable to perform the updatepublic void runQueue()
public void clear()
public boolean isEmpty()
public void synchronizeWith(UpdateSynchronizer newsync)
newsync
- Update synchronizerpublic void unsynchronizeWith(UpdateSynchronizer oldsync)
oldsync
- Update synchronizer to removeCopyright © 2015 ELKI Development Team, Lehr- und Forschungseinheit für Datenbanksysteme, Ludwig-Maximilians-Universität München. License information.