[rfc][icedtea-web] Make applet resize message handling asynchronous

Jiri Vanek jvanek at redhat.com
Mon Jun 3 07:32:48 PDT 2013

On 06/03/2013 03:37 PM, Adam Domurad wrote:
> On 06/03/2013 05:24 AM, Jiri Vanek wrote:
>> On 05/31/2013 09:16 PM, Adam Domurad wrote:
>>> Hi, this is a defensive patch to remove deadlock possibility entirely
>>> from the applet resizing message. I think as much as it can be
>>> avoided, blocking operations should not occur on the worker threads.
>>> We never make more than 2 worker threads for normal messages, so they
>>> should spawn a thread for any task that will potentially take a
>>> substantial time.
>>> ChangeLog:
>>> 2013-XX-XX Adam Domurad <adomurad at redhat.com>
>>> * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java:
>>> Handle resizing more robustly by not blocking worker thread
>>> I am also writing this little page:
>>> http://icedtea.classpath.org/wiki/Fixing_IcedTea-Web_Browser_Hanging
>>> Comments welcome. It is linked from the icedtea-web wiki page under
>>> 'Common problems'.
>>> Happy hacking,
>>> -Adam
>> Looks good to me. Just nit which you may/do not need to follow:
>> To create inner ResizeAppletPanel class impelmenting Runnable, so it will:
>> - you will just call new Thread(new resizeAppletPanel(panel)) in main
>> codse
>> - will lead programmer to use the thread if he will need to call
>> resize on some other place
>> - I know you do not like many tinny classes but imho it is more clear O:)
> I don't think this is very reusable. All the other cases where you would resize are after the applet has initialized. I rather leave it as is.

ok, thanx!

>> According to the page:
>> http://icedtea.classpath.org/wiki/Fixing_IcedTea-Web_Browser_Hanging
>> nice effort! Should be linked for mman page otherwise
> It is
>> It does not mention js->appelt->js deadlock. Is this deadlock in subset
>> for this page?
> You can add it :-)


More information about the distro-pkg-dev mailing list