JavaFX Application Thread is recursively re-entrant into Eventhandler handle() method under some circumstances

javafx at javafx at
Sat Sep 8 15:32:40 UTC 2018

Here is the link to the demonstration applications for this issue.

I noticed one small javadoc error which references a class whose name 
was changed in a refactoring, but it should not really confuse anyone. 

You have to read the readme.txt .

On Friday, September 7, 2018 at 8:37 PM, javafx at 
> Hi, 
> I have a couple of very small apps (3 small classes in one case and 5
> in another)  which demonstrate that, under some circumstances, the
> JavaFX Application Thread will recursively re-enter
> EventHandler#handle().
> So this means that it is already in handle (and calls therefrom) and
> will, in some situations not complete that  processing (thus exiting
> handle) before it reappears in the same instance of EventHandler's
> handle method again. So this is true recursion.
> I actually don't know if this is expected behavior or not. No one 
> I've
> talked to expected it; the general understanding is the JavaFX
> Application Thread (processing) is specifically single-threaded and
> also that it will defintily complete one invocation of handle() 
> before
> beginning another one.
> I have to say that there is NO other Thread  in play here, at least 
> no
> other Thread my applications create (what's going on QuantumToolKit 
> may
> be a different story.)
> The material upshot of this is it can lead to apparent  program
> incorrectness if the dev believes that it's not the case, and 100% of
> devs I've talked to think it's not possible. 
> I am happy to post or attach the classes or modules as requested but
> first I wanted to check to see if in fact this is already known to be
> true and is in fact  expected behavior, in which case it's a 
> non-issue
> and just a subtlety people are not aware of.
> Thank you so much !

More information about the openjfx-dev mailing list