Linux/C 测试线程是否存活 - pthread_kill

pthread_kill 函数类似 Shell 中的 kill 命令,它向线程发送信号。

函数原型:

int pthread_kill(pthread_t id, int sig);

功能:向指定 ID 的线程发送 sig 信号

其中 sig = 0 是保留信号,可以用来测试线程是否存活

#include <pthread.h>
#include <errno.h>
int is_thread_alive(pthread_t tid)
{
    int kill_rc = pthread_kill(tid, 0);
    if (kill_rc == ESRCH)    // 线程不存在
    {
        return 0;
    }
    return 1;
}

标签: Linux/C

发表评论: