Some sun.misc internal APIs are deprectaed in JDK 9 and will be encapsulated or removed in a future release.
@Override public void handle(Signal signal) { if (exitSignalTriggered.get()) { System.err.println("Exiting with extreme prejudice due to " + signal); // Really exit Runtime.getRuntime().halt(0); } else { System.err.println("Attempting gentle exit on " + signal); exitSignalTriggered.set(true); existingExitHandler.get().handle(signal); } } };
@Override public void handle(Signal signal) { LOG.warn("Detected signal {} {}, calling deallocator", signal.getName(), signal.getNumber()); // do nothing on "signal default" or "signal ignore" if (handler == SIG_DFL || handler == SIG_IGN) { return; } try { deallocator.deallocate(); } finally { handler.handle(signal); } }
@Override @IgnoreJRERequirement public void handle(Signal sig) { if (interceptor.handle(sig.getName()) && (oldHandler != null)) { oldHandler.handle(sig); } } }
public void handle(Signal signal) { LOG.info("Receive singal " + signal.getName() + " " + signal.getNumber()); Runnable runner = signalHandlers.get(signal.getNumber()); try { if (runner == null) { LOG.info("Skip JStorm register handler of signal: {}", signal.getName()); } else { LOG.info("Begin to handle signal of {}", signal.getName()); runner.run(); LOG.info("Successfully handle signal of {}", signal.getName()); } } catch (Throwable e) { LOG.error("Failed to handle signal of " + signal.getName() + ":" + e.getCause(), e); } try { SignalHandler oldHandler = oldSignalHandlers.get(signal.getNumber()); if (oldHandler != null) { LOG.info("Begin to run the old singleHandler"); oldHandler.handle(signal); // Force to sleep one second to avoid competition JStormUtils.sleepMs(1000); LOG.info("Successfully run the old singleHandler"); } } catch (Throwable e) { LOG.error("Failed to run old SignalHandler of signal: " + signal.getName() + ":" + e.getCause(), e); } } }
/** * Handle an incoming signal. * * @param signal The incoming signal */ @Override public void handle(Signal signal) { LOG.error("RECEIVED SIGNAL " + signal.getNumber() + ": SIG" + signal.getName()); prevHandler.handle(signal); } }
protected void handleDefault(final sun.misc.Signal sig, final ConsoleReader consoleReader) throws IOException { final Signal signal = Signal.valueOfName(sig.getName()); switch (signal) { case SIGINT: if (consoleReader != null) { String prompt = consoleReader.getPrompt(); consoleReader.resetPromptLine(prompt, "", -1); } break; default: final SignalHandler handler = getOriginalSignalHandler(signal); if (handler != null) { handler.handle(sig); } } }
public IRubyObject call(ThreadContext context, IRubyObject[] args, Block block) { oldHandler.handle(signal); return runtime.getNil(); } };
public IRubyObject call(ThreadContext context, IRubyObject[] args, Block block) { oldHandler.handle(signal); return runtime.getNil(); } };
Signal sigInt = new Signal("INT"); // First register with SIG_DFL, just to get the old handler. final SignalHandler oldHandler = Signal.handle(sigInt, SignalHandler.SIG_DFL ); // Now register the actual handler Signal.handle(sigInt, new SignalHandler(){ @Override public void handle(Signal signal) { System.err.println("Sigint is being handled"); oldHandler.handle(signal); } });
@Override public void handle(Signal signal) { for (SignalHandler handler : handlers) { try { if (handler != null) handler.handle(signal); } catch (Throwable t) { Jvm.warn().on(this.getClass(), "Problem handling signal", t); } } } }
@Override public void handle(Signal signal) { for (SignalHandler handler : handlers) { try { if (handler != null) handler.handle(signal); } catch (Throwable t) { Jvm.warn().on(this.getClass(), "Problem handling signal", t); } } } }
/** * Handle an incoming signal. * * @param signal The incoming signal */ @Override public void handle(Signal signal) { LOG.error("RECEIVED SIGNAL " + signal.getNumber() + ": SIG" + signal.getName()); prevHandler.handle(signal); } }
/** * Handle an incoming signal. * * @param signal The incoming signal */ @Override public void handle(Signal signal) { LOG.error("RECEIVED SIGNAL " + signal.getNumber() + ": SIG" + signal.getName()); prevHandler.handle(signal); } }
protected void handleDefault(final sun.misc.Signal sig) { final Signal signal = Signal.valueOfName(sig.getName()); switch (signal) { case SIGINT: break; // ignore the interrupt signal default: final SignalHandler handler = getOriginalSignalHandler(signal); if (handler != null) { handler.handle(sig); } } }
/** * Handle an incoming signal. * * @param signal The incoming signal */ @Override public void handle(Signal signal) { LOG.error("RECEIVED SIGNAL " + signal.getNumber() + ": SIG" + signal.getName()); prevHandler.handle(signal); } }
@Override @IgnoreJRERequirement public void handle(Signal sig) { if (interceptor.handle(sig.getName()) && (oldHandler != null)) { oldHandler.handle(sig); } } }
/** * Handle an incoming signal. * * @param signal The incoming signal */ @Override public void handle(Signal signal) { LOG.error("RECEIVED SIGNAL " + signal.getNumber() + ": SIG" + signal.getName()); prevHandler.handle(signal); } }
protected void handleDefault(final sun.misc.Signal sig) { final Signal signal = Signal.valueOfName(sig.getName()); switch (signal) { case SIGINT: break; // ignore the interrupt signal default: final SignalHandler handler = getOriginalSignalHandler(signal); if (handler != null) { handler.handle(sig); } } }
public IRubyObject call(ThreadContext context, IRubyObject[] args, Block block) { oldHandler.handle(new Signal(handler.signal)); return recv.getRuntime().getNil(); } }, recv.getRuntime().getCurrentContext()), Block.Type.NORMAL);
@Override public void handle(Signal s) { handler.handle(new StickySignal(s.getName(), s.getNumber())); if (next != null) next.handle(s); }