select 操作阻塞的时候有线程的取消点吗

baidu_29175517 2015-12-23 04:48:46
线程A select 阻塞很久
线程B 通过pthread_cancle发送cancle信号给A


线程A在select阻塞的过程中可以响应改信号从而退出线程吗

...全文
397 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
fly 100% 2016-01-02
  • 打赏
  • 举报
回复
select 底层对用的是poll 函数 里面会有sleep的操作释放cpu的
pcboyxhy 2016-01-02
  • 打赏
  • 举报
回复
Linux下NPTL下是通过signal实现的cancel,select会被signal打断,返回-1和EINTR
nswcfd 2016-01-02
  • 打赏
  • 举报
回复
select的阻塞过程(实际是让出cpu)是TASK_INTERRUPTIBLE的,所以醒来之后会检查信号的。

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧