NodeJ, как разделить socket.io между основным и дочерним процессами? - PullRequest
0 голосов
/ 14 января 2019

Предположим, что ниже мой app.js

var app = express();
let server = require("http").Server(app);

let io = require("socket.io").listen(server);
require("./forked-background-process")(io);

и далее forked-background-process, которые создают раздвоенный процесс

let schedule = require("node-schedule");
   module.exports = io => {
     schedule.scheduleJob("40 9 11 * * *", async function() {
     const jobAlertForkedProcess = fork('./startup/schedule-jobs');
     await jobAlertForkedProcess.send(2, io);
       jobAlertForkedProcess.on('message', (sum) => {
       jobAlertForkedProcess.kill();
     });
  });
}

и это мой разветвленный контент процесса startup/schedule-jobs:

process.on('message', async (type, io) => {

});

Но это вызывает следующую ошибку This handle type cannot be sent at ChildProcess.target._send

...