On Nov 5, 2013, at 8:26 AM, Peter Levart <peter.lev...@gmail.com> wrote:
> 
> P.S. I'm curious about the strange seemingly unneeded code fragments in 
> FinalizerThread and both Runnables. For example:
> 
> 169         forkSecondaryFinalizer(new Runnable() {
> 170*private volatile boolean running;*
> 171             public void run() {
> 172*if (running)*
> 173*return;*
> 174*running = true;*
> 
> The FinalizerThread and each Runnable instance is only executed once. Why 
> these checks then? Does anybody know?
> 

I was wondering that too. A Thread is an instance of Runnable. So a finalize 
method could re-exec the current finalizer thread on another another thread.

Paul.

Reply via email to