设为首页 加入收藏

TOP

Android bionic缺失pthread_cancel的解决方法
2014-11-24 12:11:35 来源: 作者: 【 】 浏览:0
Tags:Android bionic 缺失 pthread_cancel 解决 方法

首先介绍一个指标的方法,使用signal替代cancel调用:


当worker thread超时时,在主线程(或者是监视进程)中调用



在worker thread中加入对SIGUSR1信号的处理



最根本的解决方法是重写worker thread,使用poll或者select等处理IO操作防止stuck的发生,下面是Android源码system/libsysutils/src/SocketListener.cpp的处理方法


1,创建worker thread前先创建通讯管道



2,在worker thread的大循环中使用select同时监控管道和IO fd



3,需要退出时通过管道通知worker thread


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android UEventObserver 下一篇Linux中通过shell进行数据计算

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Java 并发工具类:提 (2025-12-25 20:25:44)
·Java面试技巧:如何 (2025-12-25 20:25:41)
·Java并发编程中的线 (2025-12-25 20:25:38)
·C 语言 - cppreferen (2025-12-25 19:50:27)
·《C 语言入门教程》 (2025-12-25 19:50:23)