El método MessagePort.postMessage() es una interfaz de programación de aplicaciones incorporada de la clase Worker dentro del módulo worker_threads que se usa para enviar el mensaje de un puerto a otro.
Sintaxis:
const MessagePort.postMessage(value[, transferList])
Parámetros: este método toma el valor como un parámetro que puede contener cualquier tipo de objeto.
Valor de retorno: este método envía el mensaje de un puerto a otro.
Ejemplo 1: Nombre de archivo: index.js
Javascript
// Node.js program to demonstrate the // MessageChannel.postMessage() method // Importing worker_thread module const { MessageChannel, receiveMessageOnPort } = require('worker_threads'); // Creating and initializing the MessageChannel const { port1, port2 } = new MessageChannel(); // Sending data to port 2 // by using postMessage() method port1.postMessage({ hello: 'world1' }); // Posting data in port 1 // by using postMessage() method port2.postMessage({ hello: 'world2' }); /// Display the result console.log("received data in port1 : "); console.log(receiveMessageOnPort(port1)); console.log("received data in port2 : "); console.log(receiveMessageOnPort(port2)); // Closing the ports port1.close(); port2.close();
Producción:
received data in port1 : { message: { hello: 'world2' } } received data in port2 : { message: { hello: 'world1' } }
Ejemplo 2: Nombre de archivo: index.js
Javascript
// Node.js program to demonstrate the // MessageChannel.postMessage() method // Importing worker_thread module const { MessageChannel, receiveMessageOnPort } = require('worker_threads'); // Creating and initializing the MessageChannel const { port1, port2 } = new MessageChannel(); // Catching the event message port2.on('message', (message) => console.log(message)); // Catching the event close port2.on('close', () => console.log('closed!')); // Sending message to port2 // by using postMessage() method port1.postMessage('GFG'); // Closing port by using // close() method port1.close();
Producción:
GFG closed!
Ejecute el archivo index.js con el siguiente comando:
node index.js
Publicación traducida automáticamente
Artículo escrito por RohitPrasad3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA