【发布时间】:2013-03-20 23:48:05
【问题描述】:
MI有一个程序以for循环开头,它旋转了10次,一个循环持续一秒钟。我需要处理一个信号(CTRL+C),在处理它时,它应该做它自己的 for 循环,在它停止之后,我应该返回到主循环。我已经设法完成了上面的几乎所有事情,但循环不会单独执行。他们并行进行。希望你能帮忙...谢谢:)
顺便说一句,我的代码是:
import sun.misc.Signal;
import sun.misc.SignalHandler;
public class MySig {
public static void shhh(int s){ //s -> seconds :)
s = s*1000;
try{
Thread.sleep(s);
}catch(InterruptedException e){
System.out.println("Uh-oh :(");
}
}
public static void main(String[] args){
Signal.handle(new Signal("INT"), new SignalHandler () {
public void handle(Signal sig) {
for(int i=0; i<5; i++){
System.out.println("+");
shhh(1);
}
}
});
for(int i=0; i<10; i++) {
shhh(1);
System.out.println(i+"/10");
}
}
}
【问题讨论】:
-
我真的不明白你的问题和你的代码应该做什么?
-
这是一个大学“家庭作业”...我的程序应该处理当我在循环工作时按 CTRL+C 时出现的信号,为该信号运行另一个循环,然后所有信号都已处理完毕,返回主循环并继续……如果我不够清楚,我很抱歉