当前位置: 首页 > news >正文

手机网站制作代理商文化馆网站建设方案

手机网站制作代理商,文化馆网站建设方案,濮阳 网站建设,视频剪辑线下培训班1. 进程内所有线程共享信号处理配置#xff0c;故信号配置可以全部放在主线程内。 2. 每个线程有自己的信号掩码sigset_t#xff0c;线程创建时继承创建时线程的信号掩码。 3. 触发信号处理函数按创建线程顺序分配给当前空闲线程#xff0c;信号处理函数内是可以阻塞的。 …1. 进程内所有线程共享信号处理配置故信号配置可以全部放在主线程内。 2. 每个线程有自己的信号掩码sigset_t线程创建时继承创建时线程的信号掩码。 3. 触发信号处理函数按创建线程顺序分配给当前空闲线程信号处理函数内是可以阻塞的。 4. 设置sa_flags添加SA_NODEFER可以将当前信号处理函数设置为非阻塞模式。 5. 非阻塞模式下即便上一个信号处理没有结束不会影响下一次信号处理函数进入。 6. 同时触发的信号数字越小优先级越高。 7.信号处理函数内不应进行加锁操作极容易造成死锁。 8. kill()触发的信号由进程主线程执行pthread_kill()触发的信号由参数指定的线程执行。 9.sigwait()可以将异步信号模式改为同步模式可将信号处理放入单独线程去做。 下面是测试例子 #include pthread.h #include stdio.h #include stdlib.h #include unistd.h #include signal.h #include errno.h #include time.h #include sys/time.hstatic void* thread_func(void * args) {pthread_t tid pthread_self();printf([child] thread id:%lu\r\n, tid);printf([child] thread sleep\r\n);sleep(30);printf([child] thread exit\r\n);return 0; }static void signal_main_func(int signo, siginfo_t *info, void *data) {pthread_t tid pthread_self();printf([signal-mian] signal:[%d]. current thread id:%lu, \r\n, signo, tid);printf([signal-mian] signal sleep\r\n);sleep(20);printf([signal-mian]signal exit\r\n); }static void signal_child_func(int signo, siginfo_t *info, void *data) {pthread_t tid pthread_self();printf([signal-child] signal:[%d]. current thread id:%lu\r\n, signo, tid);printf([signal-child] child signal sleep\r\n);sleep(2);printf([signal-child] child signal exit\r\n);}static void signal_timeout(int n) {pthread_t tid pthread_self();printf([signal-timer] timeout[%d]. current thread id:%lu\r\n, n,tid); }void init_timer(int ms) {struct sigaction act;struct itimerval value;act.sa_handler signal_timeout;act.sa_flags SA_RESTART;sigemptyset(act.sa_mask);sigaction(SIGALRM, act, NULL );value.it_value.tv_sec ms/1000;value.it_value.tv_usec ms%1000 * 1000;value.it_interval value.it_value;setitimer(ITIMER_REAL, value, NULL ); }void init_signal(int signo, void* handler) {struct sigaction act;act.sa_sigaction (void (*)(int, siginfo_t *, void *))handler;act.sa_flags SA_SIGINFO;sigemptyset(act.sa_mask);sigaction(signo, act, NULL ); }int main(int argc, char** argv) {int ret;int count 10;pthread_t tid;tid pthread_self();printf([main] thread id:%lu\r\n, tid);init_signal(SIGINT, signal_main_func);init_timer(1000);init_signal(SIGUSR1, signal_child_func);ret pthread_create(tid, 0, (void*)thread_func, NULL);if (ret 0) {printf(failed to create thread.\r\n);return -1;}pthread_detach(tid);while(count-- 0) {printf([main] kill child. child thread id:%lu\r\n, tid);pthread_kill(tid, SIGUSR1);printf([main] thread sleep. count:%d\r\n, count);sleep(3);}printf([main] thread exit\r\n);return 0; } 执行结果
http://wiki.neutronadmin.com/news/147002/

相关文章:

  • 源代码做的网站好用么一站式网站建设有哪些
  • 网站建设公司的转型php网站开发防注入
  • 公司查名网站怎么在百度打广告
  • 如何查询网站的空间商自己做网站的流程
  • 微网站建设套餐查看wordpress版本号
  • 舞蹈网站模版手机网站建设市场
  • sync wordpress分类信息网站如何做优化
  • wordpress文章输出函数西安分类信息seo公司
  • 简单模板网站制作时间上海装修公司排名哪家好
  • 新会区住房和城乡建设局网站做网站需要哪些条件
  • 网站开发人员工工资律师行业网站模板
  • 武进网站建设效果江阴做网站的公司有
  • 大淘客网站商品做淘口令iis7配置asp.net网站
  • 福建平潭建设局网站网络营销策划的内容
  • 部门网站建设情况汇报wordpress里的导航用什么位置
  • 搭建wordpress博客终端郑州网站优化公司价位
  • 沧州市宇通网站建设公司石家庄做网站公司哪家好
  • 东莞企业网站seo软文形式推广产品
  • 网站建设演示ppt微商建立网站
  • 天津网站优化软件网站dns查询
  • 中国建设银行网站会员注册滨江网站建设制作
  • 晋城商城网站开发设计照片视频制作软件
  • 网站建设专家价格代做ppt
  • 重庆网站建设023kwwordpress MP4 flv
  • 新网站百度收录要几天衡水购物网站制作
  • 网站备案密码修改wordpress 后台 谷歌字体
  • 公司做网站推广做图网站被告
  • 做网站建设上海网站建设百度推广公司
  • 百度知道网页版入口网站网络推广能优化
  • 自己建一个简单的网站孟村做网站价格