我有以下NodeJS代码:

setInterval(function() {}, 1e6);
process.on('SIGUSR1', function() {
    console.log('Got a signal');
});

在Unix中,我应该能够使用kill -s SIGUSR1 1234发送该信号。 Windows没有kill命令,我可以看到Powershell有,但是似乎没有-s like选项。
NAME
    Stop-Process

SYNTAX
    Stop-Process [-Id] <int[]> [-PassThru] [-Force] [-WhatIf] [-Confirm]  [<CommonParameters>]

    Stop-Process -Name <string[]> [-PassThru] [-Force] [-WhatIf] [-Confirm]  [<CommonParameters>]

    Stop-Process [-InputObject] <Process[]> [-PassThru] [-Force] [-WhatIf] [-Confirm]  [<CommonParameters>]


ALIASES
    spps
    kill


REMARKS
    Get-Help cannot find the Help files for this cmdlet on this computer. It is displaying only partial help.
        -- To download and install Help files for the module that includes this cmdlet, use Update-Help.
        -- To view the Help topic for this cmdlet online, type: "Get-Help Stop-Process -Online" or
           go to http://go.microsoft.com/fwlink/?LinkID=113412.

那么,如何在Windows中发送SIGUSR1信号?

最佳答案

如前所述,Windows不支持UNIX信号。

但是,在nodejs中,SIGUSR1用于在已经运行的进程上启动调试器,如果这是您所追求的功能,则可以使用未公开的api:
process._debugProcess(pid);

这将在进程上启动调试器。

关于node.js - 在Windows中发送SIGUSR1 IPC,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33016337/

10-10 12:49