[ https://issues.apache.org/jira/browse/DIRMINA-547?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Trustin Lee closed DIRMINA-547. ------------------------------- Resolution: Fixed Done. > Reduce unnecessary thread creation and destruction caused by IdleStatusChecker > ------------------------------------------------------------------------------ > > Key: DIRMINA-547 > URL: https://issues.apache.org/jira/browse/DIRMINA-547 > Project: MINA > Issue Type: Improvement > Components: Core > Affects Versions: 2.0.0-M1 > Reporter: Trustin Lee > Assignee: Trustin Lee > Priority: Minor > Fix For: 2.0.0-M2 > > > When there is only one service and the service is being activated and > deactivated repetitively, ScheduledThreadPoolExecutor keeps being created and > destructed by IdleStatusChecker, which causes big overhead. This becomes a > real problem when a user uses a Connector to maintain just one connection, > which is opened and closed very frequently, because the activation and the > deactivation of the service follows the creation and the destruction of a > session. > The solution is make the life cycle of IdleStatusChecker thread to follow the > life cycle of respective services. For now, IdleStatusChecker is a singleton > and manages threads by itself. By moving all thread management code to > AbstractIoService, IdleStatusChecker doesn't need to start and stop thread > excessively but AbstractIoService will stop the thread when dispose() is > called explicitly by user, like other worker threads. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.