嗨我正在使用child_process.spwan啓動在Windows上運行python腳本的子進程。該腳本在SIGINT上進行偵聽以優雅地退出。但Windows不支持信號,並且所有節點都在模擬。因此,Windows上的child_process.kill('SIGINT')
實際上是無條件地終止進程(沒有正常退出,未調用python的SIGTERM/SIGINT處理程序)。也寫一個ctrl+c
字符到標準輸入也不起作用。Nodejs:發送Ctrl + C到Windows上的子進程
當我查看Python API時,我得到了可以滿足需求的CTRL_BREAK_EVENT和CTRL_C_EVENT。我想知道節點是否具有與此類似的特定於平臺的API?
相關職位,但沒有工作的人: How to send control C node.js and child_processes sending crtl+c to a node.js spawned childprocess using stdin.write()?
感謝。這當然是有效的,當孩子是一個節點進程。但是,如果最終我需要產生一個Python進程(例如'spawn('python',['myscript.py')'),它擁有一些資源(例如套接字),但根本不會說Javascript。我以跨平臺的方式處理python proc? – kenmark