[
https://issues.apache.org/jira/browse/ACCUMULO-2419?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
John Vines updated ACCUMULO-2419:
---------------------------------
Fix Version/s: 1.7.0
> Improve SimpleTimer by replacing java.util.Timer
> ------------------------------------------------
>
> Key: ACCUMULO-2419
> URL: https://issues.apache.org/jira/browse/ACCUMULO-2419
> Project: Accumulo
> Issue Type: Improvement
> Components: tserver
> Reporter: Bill Havanki
> Assignee: Bill Havanki
> Priority: Minor
> Labels: performance
> Fix For: 1.7.0
>
>
> The server utility class {{SimpleTimer}} uses a {{java.util.Timer}} under the
> hood for scheduling tasks. From _Java Concurrency in Practice_, p. 123:
> bq. {{Timer}} has some drawbacks, and {{ScheduledThreadPoolExecutor}} should
> be thought of as its replacement. ... there is little reason to use {{Timer}}
> in Java 5.0 or later.
> The purpose of {{SimpleTimer}} is "to reduce the number of threads dedicated
> to simple events", but a user cannot opt to let more than one thread handle
> the events on systems that can take the load. Also, if any task does take a
> long time for some reason, execution of other tasks is affected.
> The {{Timer}} in {{SimpleTimer}} should be replaced with
> {{ScheduledThreadPoolExecutor}}, and the class should allow for more than one
> thread to be used for task execution.
--
This message was sent by Atlassian JIRA
(v6.2#6252)