RFR: 8324658: Allow animation play/start/stop/pause methods to be called on any thread [v14]
Kevin Rushforth
kcr at openjdk.org
Mon Jan 29 19:04:47 UTC 2024
On Mon, 29 Jan 2024 16:42:15 GMT, Nir Lisker <nlisker at openjdk.org> wrote:
>> Added a utility method to run code on the FX thread if it's not already, and changed the animation methods to use it.
>
> Nir Lisker has updated the pull request incrementally with one additional commit since the last revision:
>
> Update tests
Changes requested by kcr (Lead).
tests/system/src/test/java/test/com/sun/javafx/animation/SynchronizationTest.java line 87:
> 85: for (int i = 0; i < 10; i++) {
> 86: executor.submit(runnable);
> 87: }
I did a quick prototype of the idea I mentioned in my last comment, and it looks like it works:
Runnable wrappedRunnable = () -> {
try {
runnable.run();
} catch (Throwable e) {
thread = Thread.currentThread();
throwable = e;
failed.set(true);
waiter.countDown();
}
};
for (int i = 0; i < 10; i++) {
executor.submit(wrappedRunnable);
}
This obviates the need for the `registerExceptionHandler` calls in the two tests themselves (this one in _this_ method is still needed).
-------------
PR Review: https://git.openjdk.org/jfx/pull/1352#pullrequestreview-1849556169
PR Review Comment: https://git.openjdk.org/jfx/pull/1352#discussion_r1470065959
More information about the openjfx-dev
mailing list