[
https://issues.apache.org/jira/browse/ROCKETMQ-39?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15817867#comment-15817867
]
ASF GitHub Bot commented on ROCKETMQ-39:
----------------------------------------
Github user wu-sheng commented on a diff in the pull request:
https://github.com/apache/incubator-rocketmq/pull/34#discussion_r95546560
--- Diff:
filtersrv/src/main/java/org/apache/rocketmq/filtersrv/FiltersrvStartup.java ---
@@ -135,27 +137,17 @@ public static FiltersrvController
createController(String[] args) {
System.exit(-3);
}
- Runtime.getRuntime().addShutdownHook(new Thread(new Runnable()
{
- private volatile boolean hasShutdown = false;
- private AtomicInteger shutdownTimes = new AtomicInteger(0);
-
+ Runtime.getRuntime().addShutdownHook(new
ShutdownHookThread(log, new Callable() {
@Override
- public void run() {
- synchronized (this) {
- log.info("shutdown hook was invoked, " +
this.shutdownTimes.incrementAndGet());
- if (!this.hasShutdown) {
- this.hasShutdown = true;
- long begineTime = System.currentTimeMillis();
- controller.shutdown();
- long consumingTimeTotal =
System.currentTimeMillis() - begineTime;
- log.info("shutdown hook over, consuming time
total(ms): " + consumingTimeTotal);
- }
- }
+ public Object call() throws Exception {
--- End diff --
@WillemJiang done.
> Duplicated codes in both filtersrv and namesrv modules
> ------------------------------------------------------
>
> Key: ROCKETMQ-39
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-39
> Project: Apache RocketMQ
> Issue Type: Improvement
> Components: rocketmq-namesrv
> Reporter: Wu Sheng
> Assignee: Xiaorui Wang
> Priority: Minor
>
> In FiltersrvStartup.class and NamesrvStartup.class, exist the exact same code
> about add jvm shutdown hook, and execute somthing on shutting down.
> Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
> private volatile boolean hasShutdown = false;
> private AtomicInteger shutdownTimes = new AtomicInteger(0);
> @Override
> public void run() {
> synchronized (this) {
> log.info("shutdown hook was invoked, " +
> this.shutdownTimes.incrementAndGet());
> if (!this.hasShutdown) {
> this.hasShutdown = true;
> long begineTime = System.currentTimeMillis();
> controller.shutdown();
> long consumingTimeTotal =
> System.currentTimeMillis() - begineTime;
> log.info("shutdown hook over, consuming time
> total(ms): " + consumingTimeTotal);
> }
> }
> }
> }, "ShutdownHook"));
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)