RFR: 8293839: Documentation memory consistency effects of runLater

Jens Lidestrom duke at openjdk.org
Thu Sep 15 07:06:33 UTC 2022


On Tue, 6 Sep 2022 16:20:02 GMT, Kevin Rushforth <kcr at 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.
>
> @jensli I was going through the PRs that are not marked as `rfr` (ready for review), and spotted this one. There are two needed steps before this will be marked as ready:
> 
> 1. You need to file a bug report
> 2. You need to fix the whitespace error pointed out by `jcheck`  in the code diffs
> 
> See [CONTRIBUTING.md](https://github.com/openjdk/jfx/blob/master/CONTRIBUTING.md) for more information.

Thanks for the help, @kevinrushforth. I was not prepared for all the rigour of the OpenJDK contribution process. This has been a perfect opportunity for me to learn about it.

When my bug report submission is accepted then hopefully all formal requirements will be met. (Maybe also the internal review bug ID have to be updated to the proper bug ID.)

-------------

PR: https://git.openjdk.org/jfx/pull/872


More information about the openjfx-dev mailing list