pthread_mutex_lock 返回22

llzhe 2012-09-03 01:22:03
pthread_mutex_lock 返回22,错误描述是无效的参数,按照推理是pthread_mutex_init出错了,
但是我在调用pthread_mutex_init时返回是0,没有错误,

我得场景是:pthread_mutex_init是在另外一个线程里执行的,而pthread_mutex_lock是在不同的线程里,


这个是怎么回事呢?
...全文
496 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangweizhaoxin 2012-09-05
  • 打赏
  • 举报
回复
贴上代码
mymtom 2012-09-05
  • 打赏
  • 举报
回复
初始化在另外一个线程执行的?
建议检查一下
1. pthread_mutex_lock被调用的时候,pthread_mutex_init是否已经执行完毕。
2. 调用pthread_mutex_lock和pthread_mutex_init使用的mutex参数是不是同一个。
shichuan609 2012-09-03
  • 打赏
  • 举报
回复
pthread_mutex_init是不是应该在主进程里调用,然后线程pthread_mutex_lock?只有主进程中定义的数据,才可以被线程共享吧,线程里的资源是属于自己的吧,其他的是不可以使用的。
llzhe 2012-09-03
  • 打赏
  • 举报
回复
自己顶一个

23,114

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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