gpt4 book ai didi

java - netbeans 如何停止运行?

转载 作者:搜寻专家 更新时间:2023-11-01 03:12:31 24 4
gpt4 key购买 nike

我正在使用 Netbeans 7 在 Linux 中使用 Java 进行编程,并且由于我的程序(有时)无法退出(可能不是在这个时代),我创建了一个线程来处理关闭

Runtime.getRuntime().addShutdownHook(new StopThread());

但是当我使用 netbeans (F6) 启动代码并通过“STOP”按钮停止它时,线程没有创建;但如果我通过终端运行程序并发送 CTRL-c,线程就会创建。
问题是:netbeans 发出什么类型的信号来终止程序?
或者(更好):我如何处理 netbeans 的停止,以便在我强制停止程序时创建线程?
或者有没有办法修改停止的工作方式?

谢谢!

最佳答案

您使用的是 Linux,这让一切变得非常简单。我写了很少的测试和观察与您相同的行为-从终端 Hook 运行的 crtl+c 正在运行,但在 Netbeans 中停止则不起作用。以下是一些解决方法:

  1. 我在 Gnome 上,当我在系统监视器中找到正在运行的进程并在其上按“结束进程”时 - Hook 正在工作。
  2. 其他更通用的方式:

    $ ps ax | grep Hook
    17144 ? Sl 1:21 /usr/lib/jvm/java-6-sun/bin/java -Dfile.encoding=UTF-8 -classpath /home/isopov/NetBeansProjects/ShutdownHookTest/build/classes:/home/isopov/NetBeansProjects/ShutdownHookTest/src shutdownhooktest.ShutdownHookTest
    17176 pts/2 R+ 0:00 grep --color=auto Hook
    $ kill -15 17144

或者在一行中:

    $ ps x | grep HookTest | grep java | awk '{print $1}' | xargs kill -15

关于java - netbeans 如何停止运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6861939/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com