You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pivot.apache.org by "Roger Whitcomb (JIRA)" <ji...@apache.org> on 2017/12/07 17:39:00 UTC

[jira] [Commented] (PIVOT-498) Revisit use of Executors.newCachedThreadPool() in Task class

    [ https://issues.apache.org/jira/browse/PIVOT-498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16282218#comment-16282218 ] 

Roger Whitcomb commented on PIVOT-498:
--------------------------------------

I'm going to take a chance that:
a) Since applets are mostly obsolete now that we won't ever see this problem going forward (if it still exists); and
b) The problem is most likely fixed in Java 8/9 now anyway.

So, I propose to do this:
1) Move the default (simple) executor service out of Task into a separate class somewhere; and
2) Change the default in Task to be an "Executors.newCachedThreadPool()" as it should be; finally
3) Retain the ability to still specify an executor service in Task, TaskSequence and TaskGroup constructors in case there are problems.


> Revisit use of Executors.newCachedThreadPool() in Task class
> ------------------------------------------------------------
>
>                 Key: PIVOT-498
>                 URL: https://issues.apache.org/jira/browse/PIVOT-498
>             Project: Pivot
>          Issue Type: Task
>          Components: core-util
>            Reporter: Greg Brown
>            Assignee: Roger Whitcomb
>             Fix For: 2.5
>
>
> There appears to be an issue with Executors.newCachedThreadPool() when running as an applet. IllegalThreadStateExceptions are thrown periodically and seemingly unpredictably. The current workaround uses a custom ExecutorService that simply dispatches requests to new threads as they are received. However, this is not optimal and a better solution should be found, if possible.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)