|
JOGL v2.6.0-rc-20250706
JOGL, High-Performance Graphics Binding for Java (public API).
|
EDT stands for Event Dispatch Thread. More...
Public Member Functions | |
| long | getPollPeriod () |
| void | setPollPeriod (long ms) |
| void | start () throws IllegalStateException |
Starts the EDT after it's creation or after stopping. More... | |
| boolean | isCurrentThreadEDT () |
| Returns true if the current thread is the event dispatch thread (EDT). More... | |
| boolean | isCurrentThreadNEDT () |
| Returns true if the current thread is the internal NEWT event dequeue thread (NEDT). More... | |
| boolean | isCurrentThreadEDTorNEDT () |
Returns true if either isCurrentThreadEDT() or isCurrentThreadNEDT() is true, otherwise false. More... | |
| boolean | isRunning () |
| boolean | invokeStop (boolean wait, Runnable finalTask) |
| Append the final task to the EDT task queue, signals EDT to stop. More... | |
| boolean | invoke (boolean wait, Runnable task) |
| Appends task to the EDT task queue if current thread is not EDT, otherwise execute task immediately. More... | |
| boolean | waitUntilIdle () |
| Wait until the EDT task queue is empty. More... | |
| boolean | waitUntilStopped () |
| Wait until EDT task is stopped. More... | |
Static Public Attributes | |
| static final long | defaultEDTPollPeriod = 10 |
EDT stands for Event Dispatch Thread.
EDTUtil comprises the functionality of:
The EDT pattern is a common tool to comply with todays windowing toolkits, where the common denominator in regards to multithreading is to:
Note: This is not true on MacOSX, where all these actions have to be performed by a unique, so called main thread.
Definition at line 53 of file EDTUtil.java.
| long com.jogamp.newt.util.EDTUtil.getPollPeriod | ( | ) |
| boolean com.jogamp.newt.util.EDTUtil.invoke | ( | boolean | wait, |
| Runnable | task | ||
| ) |
Appends task to the EDT task queue if current thread is not EDT, otherwise execute task immediately.
Wait until execution is finished if wait == true.
Can be issued from within EDT, ie from within an enqueued task.
task has been executed or queued for later execution, otherwise false | boolean com.jogamp.newt.util.EDTUtil.invokeStop | ( | boolean | wait, |
| Runnable | finalTask | ||
| ) |
Append the final task to the EDT task queue, signals EDT to stop.
If wait is true methods blocks until EDT is stopped.
task maybe null
Due to the nature of this method:
start() may follow immediately, ie creating a new EDT task has been executed or queued for later execution, otherwise false | boolean com.jogamp.newt.util.EDTUtil.isCurrentThreadEDT | ( | ) |
Returns true if the current thread is the event dispatch thread (EDT).
The EDT is the platform specific thread dispatching toolkit-events and executing toolkit-tasks enqueued via invoke(boolean, Runnable).
Usually it is the same thread as used to dequeue informal NEWTEvents (NEDT), see isCurrentThreadNEDT(), however, this may differ, e.g. SWT and AWT implementation.
| boolean com.jogamp.newt.util.EDTUtil.isCurrentThreadEDTorNEDT | ( | ) |
Returns true if either isCurrentThreadEDT() or isCurrentThreadNEDT() is true, otherwise false.
| boolean com.jogamp.newt.util.EDTUtil.isCurrentThreadNEDT | ( | ) |
Returns true if the current thread is the internal NEWT event dequeue thread (NEDT).
The NEDT is the NEWT thread used to dequeue informal NEWTEvents enqueued internally via DisplayImpl#enqueueEvent(boolean, NEWTEvent).
Usually it is the same thread as the EDT, see isCurrentThreadEDT(), however, this may differ, e.g. SWT and AWT implementation.
| boolean com.jogamp.newt.util.EDTUtil.isRunning | ( | ) |
| void com.jogamp.newt.util.EDTUtil.setPollPeriod | ( | long | ms | ) |
| ms | poll period in milliseconds |
| void com.jogamp.newt.util.EDTUtil.start | ( | ) | throws IllegalStateException |
Starts the EDT after it's creation or after stopping.
If the EDT is running, it must be stopped first and the caller should wait until it's stopped.
| IllegalStateException | if EDT is running and not subject to be stopped, i.e. isRunning() returns true |
| RuntimeException | if EDT could not be started |
| boolean com.jogamp.newt.util.EDTUtil.waitUntilIdle | ( | ) |
Wait until the EDT task queue is empty.
The last task may still be in execution when this method returns.
| boolean com.jogamp.newt.util.EDTUtil.waitUntilStopped | ( | ) |
Wait until EDT task is stopped.
No stop action is performed, invokeStop(boolean, java.lang.Runnable) should be used before.
If caller thread is EDT or NEDT, this call will not block.
|
static |
Definition at line 55 of file EDTUtil.java.