线程的信号pthread_kill()函数(线程四)
来源:互联网 发布:电话销售数据货源qq群 编辑:程序博客网 时间:2024/06/05 06:03
一:线程信号相关函数
1.pthread_kill()函数
该函数其实不是kill线程,而是向线程发送一个signal(线程所有函数中最名不符其实的函数吧。。。)
成功返回0,失败返回失败码。
第一个参数:要发送信号的线程tid。
第二个参数:0是保留信号,用来判断线程是否还存在
sig信号 (在/usr/include/bits/signum.h中)
二、代码
#include<stdio.h>#include<unistd.h>#include<pthread.h>#include<signal.h>//SIGQUIT /usr/include/bits/signum.h#include<errno.h>// ESRCH /usr/include/asm-/error-bash.hvoid* thread_fun(void* arg){ // sleep(1); printf("i am new thread.\n"); return (void*)0;}int main(int argc ,char *argv[]){ pthread_t tid; int err; int res_kill; err = pthread_create(&tid, NULL, thread_fun, NULL); if(err != 0) { printf("new thread create is failed.\n"); return 0; } sleep(1);//pthread_kill() res_kill = pthread_kill(tid, 0);//0 signal is retain sign,then no signal is send // res_kill = pthread_kill(tid, SIGQUIT);//SIGQUIT signal is quit signal ,it will quit main process if(res_kill == ESRCH) { printf("new thread tid is not found.\n"); printf("ret_kill = %d\n",res_kill); } // void * retval;// int thread_join = pthread_join(tid, &retval); printf("i am main thread .\n"); return 0;}
运行代码
0 0
- 线程的信号pthread_kill()函数(线程四)
- pthread_kill-----向线程发送信号
- pthread_kill函数检测一个线程是否还活着的程序
- 使用pthread_kill函数测试线程是否存活
- 线程的信号处理sigaction()函数(线程五)
- Linux线程-pthread_kill
- Linux线程-pthread_kill
- Linux线程-pthread_kill
- Linux线程-pthread_kill
- linux中使用pthread_kill函数测试线程是否存活的例子
- LINUX中使用PTHREAD_KILL函数测试线程是否存活的例子
- linux中使用pthread_kill函数测试线程是否存活的例子
- linux中使用pthread_kill函数测试线程是否存活的例子
- linux中使用pthread_kill函数测试线程是否存活
- linux中使用pthread_kill函数测试线程是否存活 .
- linux中使用pthread_kill函数测试线程是否存活
- linux中使用pthread_kill函数测试线程是否存活
- linux中使用pthread_kill函数测试线程是否存活
- Count the Sheep
- 安卓面试问题
- SDUT 1269 走迷宫
- Unity基础的射线使用和坐标转换
- 无线 WIFI 的13个信道频率范围
- 线程的信号pthread_kill()函数(线程四)
- Java中如何调用匿名内部类
- Flexible, organic and biodegradable: Stanford researchers develop new wave of electronics
- .net C# 程序控制IIS 添加站点域名绑定
- angular-单页面跳转ui-view
- 二叉树初始化
- 104. Maximum Depth of Binary Tree
- poj 1017 Packets
- springmvc常用注解标签详解