int pthread_create(pthread_t thread, const pthread_attr_t attr,
void *(*start_routine) (void *), void* arg);
Linux中创建线程用这个函数,用man命令查询该函数得知,当创建线程成功时,*thread 存储着线程id.
如果创建线程失败,*thread中的内容未定义。这个未定义是什么意思???
如果调用该函数之前,已经为thread赋了值,创建线程失败后,thread的值会被改变吗?
还请有了解解释一番 谢谢了。。。
未定义就是如果失败了, POSIX没有明确定义*thread会是什么值, 具体值依赖具体的API实现而不同, 但是不管值是什么, 你都不应该在失败后使用这个值.
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。