Linux下结束线程问题
在Linux下,pthread_create()动态创建线程,比如20个,线程函数的名字都是thread,pthread_create(&id,NULL,(void *)thread,NULL);我在这20个thread中都调用pthread_exit(NULL);来结束线程,这样子会出问题吗?能正常结束线程吗?
------解决方案--------------------++1
也可以 phread_join(&tid,null);
------解决方案--------------------
pthread_exit本来就是用来结束***自身(线程)***的,当然不会影响别的线程了.
就像exit是用来**自身(进程)**一样.
------解决方案--------------------
我可以肯定,电脑关机重启不会是由于你的程序使用了pthead_exit函数导致的..不然linux系统就若暴了.
要关机,至少得有root权限,并且得调用了一些重启的api才行.
所以你看你的程序运行时是否使用的root权限..有没有会导致重启的api , 如果不是,就该考虑别的问题了.
查看下系统日志吧,/var/log/syslog var/log/auth.log 等..
------解决方案--------------------楼主还是dmesg看一下重启原因吧,感觉你太盲目了。