gpt4 book ai didi

c++ - 为什么 pthread_create() 有时会在 Cygwin 端口上给出 EAGAIN?

转载 作者:太空狗 更新时间:2023-10-29 23:09:25 25 4
gpt4 key购买 nike

pthread_create() 返回 errno 11 (EAGAIN),“资源暂时不可用”是什么意思?

我正在将我的应用程序从在 Centos 4 上运行良好的 Cygwin 移植到 Cygwin。每隔一段时间,应用程序在调用 pthread_create() 时会失败,但大多数时候它运行良好。

这是什么意思?

Linux Centos 4 手册页说:

   EAGAIN The  system  lacked  the  necessary  resources  to  create  another  thread,  or  the  system-imposed  limit  on  the  total  number of threads in a process
{PTHREAD_THREADS_MAX} would be exceeded.

我怀疑我是否达到了 PTHREAD_THREADS_MAX,那么 Cygwin 系统怎么会耗尽资源来创建另一个线程?

最佳答案

来自 pthread_create() man page :

如果出现以下情况,pthread_create() 函数将失败:
再一次
系统缺少创建另一个线程所需的资源,或者将超过系统对进程中线程总数强加的限制 {PTHREAD_THREADS_MAX}。

您可以释放一些资源后再试。

关于c++ - 为什么 pthread_create() 有时会在 Cygwin 端口上给出 EAGAIN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5226838/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com