图书馆附赠

时间:2019-04-01 12:31:50

标签: c linux header kill

我尝试使用tkill来杀死一些使用c代码的线程。

使用此功能需要包括哪些库?

在linux ubuntu上运行

int main(int argc , char* argv[])
{
   tkill(123,9);

}

1 个答案:

答案 0 :(得分:1)

您了syscall(SYS_tkill, ThePid, TheSignal)

示例:

#include <unistd.h>
#include <sys/syscall.h>
#include <signal.h>
int main()
{
    //kills self:
    pid_t tid = syscall(SYS_gettid);
    syscall(SYS_tkill,tid,SIGTERM); 
    return 0;
}

Glibc的策略是不包括非POSIX系统调用的包装器。 他们可能会在当前/将来的版本中对其进行更改,但是使用通用的syscall syscall-make函数应始终在Linux上运行。