On Wed, 17 Aug 2022 07:21:43 GMT, Jens Lidestrom <d...@openjdk.org> wrote:
> Prior to this change it was not clear from the documentation if callers of > Platform#runLater must perform > any synchronisation to have writes of the calling thread be visible in the > JavaFX Application > Thread. It is important to document either if callers can rely on runLater to > do such synchronisation > internally, or to document is users CAN NOT rely on runLater for this. > > This change documents that actions in a thread prior to submitting a runnable > to > Platform#runLater happen-before actions performed by the runnable in the > JavaFX > Application Thread. > > runLater inherits the memory consistency effects of InvokeLaterDispatcher in > most cases. > InvokeLaterDispatcher uses BlockingDeque internally. This change documents > this > in the same way as it is documented by BlockingDeque. > > Other implementations of runLater should have similar memory consistency > effects. The added description looks good. I left one suggestion on using code style for the named argument. modules/javafx.graphics/src/main/java/javafx/application/Platform.java line 157: > 155: * Memory consistency effects: Actions in a thread prior to > submitting a > 156: * runnable to this method <i>happen-before</i> actions performed by > 157: * the runnable in the JavaFX Application Thread. I think it would be helpful to use code style for runnable on these two lines (since it refers to the `runnable` argument), like this: `{@code runnable}` ------------- PR: https://git.openjdk.org/jfx/pull/872