我读过你的代码的一些事情:
<击> 1.在Run函数的开头,将tid(指向void的指针)直接转换为int。你不应该取消引用它吗? 击>
最好使int转为volatile,这样编译器就不会对其值进行任何假设而不改变。
当你第二次调用函数sleep时,你传递一个类型为double(times [i])的参数,你应该传递一个unsigned int参数。像直播一样 (unsigned int) times[i] 应该解决这个问题
(unsigned int) times[i]
你在做pthread_join 之前 创建其他线程。当您创建线程3并且它进入忙等待状态时,将不会创建其他线程。尝试在for块之后添加联接。