Android/Linux 线程加入超时

标签 android linux multithreading timer pthread-join

是否有一个 pthreads API 调用可以执行与 pthread_join() 类似的操作但有超时?我正在寻找类似于 Windows WaitForSingleObject(HANDLE handle, int timeout) 函数的函数。我知道有一个 pthread_timedjoin() 调用,但它仅适用于某些版本的 Linux(绝对不适用于 Android)。

最佳答案

不,没有用于定时 pthread_join() 的标准 API,Android 使用的仿生 C 库中也没有。尽管查看仿生源代码,但他们很容易实现 glibc 中可用的 pthread_timedjoin_np() API。

您可以做的是修改您的线程,使其在完成并即将退出时发出 pthread_cond_t 信号。您想要在该线程上等待的其他线程对条件变量执行 pthread_cond_timedwait()。

关于Android/Linux 线程加入超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13752060/

相关文章:

安卓 Crashlytics Eclipse : what to commit to git?

arrays - 如何使用 ksh93 从数组中的元素中提取项目?

c - 多线程暴力破解算法

c - 相同的多线程代码在不同处理器上的时间差异?

linux - 使用 sudo 执行 2 个(类似的)命令,给出相同的精确输出

c - Pthread 条件等待和信号

java - 从字符串变量中的给定 URL 下载 HTML 源代码的正确实现的说明

android - Android 的 ParseQueryAdapter 不调用其 onLoaded 方法

android - 在 android 的嵌套 ExpandableListView 中没有子项可见

linux进程S状态但100%的cpu