El método process.setUncaughtExceptionCaptureCallback() es una interfaz de programación de aplicaciones incorporada del módulo de procesamiento que se utiliza para configurar una función de devolución de llamada que se llamará cuando ocurra una excepción no detectada. La función de devolución de llamada recibirá el valor de excepción como su primer argumento.
Sintaxis:
process.setUncaughtExceptionCaptureCallback( callback_function )
Parámetros: este método acepta un solo parámetro como se mencionó anteriormente y se describe a continuación.
- callback_function: este es un parámetro obligatorio. Puede ser una función o un valor nulo. Si se establece en nulo, la función desactivará la función de devolución de llamada.
Retorno: No devuelve ningún valor.
Los siguientes ejemplos ilustran el uso del método process.setUncaughtExceptionCaptureCallback() en Node.js:
Ejemplo 1:
Javascript
// Allocating process module const process = require('process'); // Function to be set as call back function to_be_called(ex){ console.log(ex); } // Checking whether any callback has been set before calling // process.setUncaughtExceptionCaptureCallback(to_be_called); console.log(process.hasUncaughtExceptionCaptureCallback()); // Setting callback process.setUncaughtExceptionCaptureCallback(to_be_called); // Checking whether any callback has been set before calling // process.setUncaughtExceptionCaptureCallback(to_be_called); console.log(process.hasUncaughtExceptionCaptureCallback());
Producción:
false true
Ejemplo 2:
Javascript
// Allocating process module const process = require('process'); // Function to be set as call back function to_be_called(ex) { console.log(ex); } // Checking whether any callback has been set before calling // process.setUncaughtExceptionCaptureCallback(to_be_called); // Printing whether a callback is set or not if (process.hasUncaughtExceptionCaptureCallback()) { console.log("a callback has been set using " + "process.setUncaughtExceptionCaptureCallback() method"); } else { console.log("no callback has been set using " + "process.setUncaughtExceptionCaptureCallback() method"); } // Setting callback if (process.setUncaughtExceptionCaptureCallback) { process.setUncaughtExceptionCaptureCallback(to_be_called); } else { console.log("process.setUncaughtExceptionCaptureCallback() " + "method is not defined!"); } // Checking whether any callback has been set before calling // process.setUncaughtExceptionCaptureCallback(to_be_called); if (process.hasUncaughtExceptionCaptureCallback()) { console.log("a callback has been set using " + "process.setUncaughtExceptionCaptureCallback() method"); } else { console.log("no callback has been set using " + "process.setUncaughtExceptionCaptureCallback() method"); } // Resetting callback if (process.setUncaughtExceptionCaptureCallback) { process.setUncaughtExceptionCaptureCallback(null); } else { console.log("process.setUncaughtExceptionCaptureCallback() " + " method is not defined!"); } // Checking whether any callback has been set after resetting if (process.hasUncaughtExceptionCaptureCallback()) { console.log("a callback has been set using " + "process.setUncaughtExceptionCaptureCallback() method"); } else { console.log("no callback has been set using " + "process.setUncaughtExceptionCaptureCallback() method"); }
Producción:
no callback has been set using process.setUncaughtExceptionCaptureCallback() method a callback has been set using process.setUncaughtExceptionCaptureCallback() method no callback has been set using process.setUncaughtExceptionCaptureCallback() method
Nota: El programa anterior se compilará y ejecutará utilizando el comando node filename.js , solo en plataformas POSIX.
Referencia: https://nodejs.org/api/process.html#process_process_setuncaughtexceptioncapturecallback_fn