During browser closing, plugin blocks browser's main thread, posts event to Java side to have applet to stop and destroy, also to dispose plugin's embedded frame.
But that only to guarantee embedded frame to be disposed, not to guarantee applet's stop and destroy methods get fully executed, since during the call to java, it only POSTs event to have applet shutdown. After plugin unblock the browser's main thread, the browser main thread races with Java's applet main thread, and browser's main thread may terminate before java's applet main thread to finish shutdown applet.
But that only to guarantee embedded frame to be disposed, not to guarantee applet's stop and destroy methods get fully executed, since during the call to java, it only POSTs event to have applet shutdown. After plugin unblock the browser's main thread, the browser main thread races with Java's applet main thread, and browser's main thread may terminate before java's applet main thread to finish shutdown applet.
- duplicates
-
JDK-4747295 Plugin not blocking browser properly during browser shutdown or page switch
- Closed