node.js - 同步杀死节点中的非子进程
问题描述
我想使用节点同步关闭另一个进程。我确实知道进程ID。我需要确保在另一个进程开始之前这个进程已经退出。
理想情况下,它看起来像:
await process.kill(pid);
await
实际上等待进程关闭的地方。但是,文档告诉我 process.kill 只发送退出信号。它似乎不等待返回信号或进程不再运行的某些指示。
我看到process.exit()
这里不是一个选项,因为它不需要进程 ID。事实上,它似乎与子进程有某种关系——但我确实发现文档很难理解。我要杀死的进程不是子进程。
解决方案
你可以在这里看到 node js process kill
process.on('SIGINT', () => {
//Do what is next when process got killed
});
process.kill(pid, 'SIGINT');
process.kill() 方法将信号发送到由 pid 标识的进程。
信号名称是字符串,例如 'SIGINT' 或 'SIGHUP'
推荐阅读
- javascript - 如何根据新位置将选定的 div 水平居中?
- spring-boot - Spring Batch - 如何访问动态创建的作业的 JobParameters 或 JobExecution?
- python - 使用 pyodbc 连接到 MS Access
- react-native - 类型和有效负载正在被调度而不调用它
- autodesk-designautomation - x 字节的有效负载长度超过了 8192 字节的允许限制
- laravel - 如何在 Laravel 中防止 DynamoDb 异常 ProvisionedThroughputExceededException
- ajax - 下载后从存储中删除文件
- mongodb - 你如何检查一个集合是否有上限?
- javascript - 仅在选项卡焦点上勾勒
- python - 如何计算不同张量的协方差?