我必须编写一个nodejs cli脚本来从mysql中获取超过1M的记录,这些记录有tiff图像的路径,我需要转换为pdf,然后将这些pdf拆分成单页pdf,最后插入和更新mysql中的记录。
要从mysql中获取数据,我使用了以下代码
conn.query(myQueryToGet1MRecords)
.stream()
.pipe(stream.Transform({
objectMode: true,
transform: function(data, encoding, callback){
doWhatINeedToDo(data);
callback();
}
}));
函数'doWhatINeedToDo'完成调用一系列回调的工作,直到最后更新到mysql。无论如何,每次调用'doWhatINeedToDo'都是异步的,我不知道如何完成流程执行,我的意思是我不知道放在哪里process.exit()
我如何知道节点何时完成所有工作以安全退出流程而不影响正在进行的流程?