【问题标题】:IOS limit to threads created and run one-at-a-timeIOS 限制创建并一次运行一个线程
【发布时间】:2017-05-04 21:01:51
【问题描述】:

我有一个旨在折磨线程创建过程的 IPAD 程序, 经过几千次迭代后意外失败 过程如下:

pthread_create [一个什么都不做并且很快退出的线程] 睡眠(100);

最终,pthread_create 失败并出现错误 35“线程过多”

无论睡眠间隔多长,故障最终都会发生。

随着时间的推移,线程是否存在一些任意限制,或者是否存在一些限制? 我可能在不知不觉中消耗了资源?

【问题讨论】:

    标签: ios multithreading


    【解决方案1】:

    您需要从另一个线程调用pthread_join 来回收资源,或者调用pthread_detach 来指示应该自动回收资源。与 unix 进程一样,线程也有一个结果,需要在它完全消失之前进行回收。

    【讨论】:

    • 谢谢。我误解了 pthread_create 的文档,认为 join 是可选的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-20
    • 2019-08-16
    相关资源
    最近更新 更多