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

Roman Leventov commented on FLINK-16503:
----------------------------------------

FYI: I included ForkJoinPool earlier as an unnecessary rhs expression, but it 
is actually not seriously warranted, unlike ScheduledThreadPoolExecutor. JDK 
maintainers even consider to make Executors.newFixedTheadPool() to return 
ForkJoinPool in the future: 
[http://cs.oswego.edu/pipermail/concurrency-interest/2020-February/017061.html]

> Don't assign ScheduledExecutorService into variables of ExecutorService or 
> Executor types
> -----------------------------------------------------------------------------------------
>
>                 Key: FLINK-16503
>                 URL: https://issues.apache.org/jira/browse/FLINK-16503
>             Project: Flink
>          Issue Type: Improvement
>            Reporter: Roman Leventov
>            Priority: Minor
>
> There is an unnecessary efficiency cost to assigning ScheduledExecutorService 
> (typically, ScheduledThreadPoolExecutor) into variables of ExecutorService or 
> Executor types.
> Currently, there is one such occurrence in production code, in 
> TaskManagerRunner, and three more in tests.
> They could be found using IntelliJ's Structural search pattern (and 
> Structural Search inspection):
> {{$x$ = $y$;}}
> Where the Type of {{$x$}} is set to {{ExecutorService|Executor}} ("within 
> type hierarchy" checkbox is off), and the Type of {{$y$}} is set to 
> {{ScheduledThreadPoolExecutor }}("within type hierarchy" checkbox is on).
>   
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to