|
@@ -1,7 +1,7 @@
|
|
let instance = null;
|
|
let instance = null;
|
|
|
|
|
|
const defaultTimeout = 15*1000;//15 sec
|
|
const defaultTimeout = 15*1000;//15 sec
|
|
-const exitSignals = ['SIGINT', 'SIGTERM', 'SIGBREAK', 'SIGHUP', 'uncaughtException'];
|
|
|
|
|
|
+const exitSignals = ['SIGINT', 'SIGTERM', 'SIGBREAK', 'SIGHUP', 'uncaughtException', 'SIGUSR2'];
|
|
|
|
|
|
//singleton
|
|
//singleton
|
|
class AsyncExit {
|
|
class AsyncExit {
|
|
@@ -18,13 +18,10 @@ class AsyncExit {
|
|
return instance;
|
|
return instance;
|
|
}
|
|
}
|
|
|
|
|
|
- init(signals = null, codeOnSignal = 2) {
|
|
|
|
|
|
+ init(signals = exitSignals, codeOnSignal = 2) {
|
|
if (this.inited)
|
|
if (this.inited)
|
|
throw new Error('AsyncExit: initialized already');
|
|
throw new Error('AsyncExit: initialized already');
|
|
|
|
|
|
- if (!signals)
|
|
|
|
- signals = exitSignals;
|
|
|
|
-
|
|
|
|
const runSingalCallbacks = async(signal) => {
|
|
const runSingalCallbacks = async(signal) => {
|
|
for (const signalCallback of this.onSignalCallbacks.keys()) {
|
|
for (const signalCallback of this.onSignalCallbacks.keys()) {
|
|
try {
|
|
try {
|