我正在尝试将一个大型数组从子进程传递到父进程。它大约是cell.selectionStyle = UITableViewCellSelectionStyle.none
个数组中的元素。我可能需要在未来传递更大的价值。
以下是我将子数组传递给父进程的子进程
200,000 * 100 * 2
process.on('message', (msg) => {
// console.log('inside child class');
excelParserTool(msg).then((result)=>{
process.stdout.write(JSON.stringify(result));
process.exit();
})
});
是它发送给父进程的大数组
以下是接收数组并处理它的父进程。
result
这会导致
excelParserChild.stdout.on('data', (data) => {
excelBuffer += data
});
excelParserChild.stderr.on('data', (error) => {
console.log('stderr');
console.log(error);
errorFinal += error;
console.log(errorFinal)
});
excelParserChild.on('close', (exitCode) => {
console.log(excelBuffer);
})
我已尝试使用(node:1468) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): RangeError: Invalid string length
(node:1468) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code
尝试发送数组,但它会导致相同的错误。现在我想知道这是否是将大数据从子进程传递到父进程的正确方法。将大变量从子进程传递到父进程的最佳方法是什么?如果我做得对,如何解决无效的字符串长度问题?感谢。