[与Java中的C处理程序类似吗?

问题描述 投票:0回答:1

我想基于某种外部输入(可能是字符串)立即终止一个周期,但是我不知道它何时到来,我想到C语言中的处理程序只是在信号到达的时候起作用, Java中是否有某种异步方法可在特定输入到达的确切时间起作用?

或多或少我想做的事的例子:

public void run(){
    while(/*condition*/){


    //somewhere in here there is a:
    String s= inSocket.readLine();

    // and in the bottom, I could put an if:
    if( /*s condition*/){
        break;
    }
// here some other code that I still want to execute
}

在这种情况下,循环仅在我写break的特定行处停止;每当接收到的字符串具有特定值时,我都希望它在任何行上中断]

我想基于某种外部输入(可能是字符串)立即终止循环,但是我不知道它何时到来,我想到C语言中的处理程序仅在信号出现时起作用...

java handler
1个回答
0
投票

Java通过signal handling类(sun.misc.Signal)支持background。但是,在许多情况下,使用shutdown hooks(这是高级抽象)和JDK的正式组成部分将使您的工作更加轻松。

© www.soinside.com 2019 - 2024. All rights reserved.