首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

pthread api的这俩api忘掉使用是否会导致资源泄漏

2014-01-09 
pthread api的这俩api忘记使用是否会导致资源泄漏?1)只有pthread_cleanup_push()直到进程退出都 没有调用p

pthread api的这俩api忘记使用是否会导致资源泄漏?
1)只有pthread_cleanup_push()  直到进程退出都 没有调用pthead_cleanup_pop()
2)创建了线程,但是线程退出时没有线程调用pthread_join()

问下是否会导致资源泄漏?泄漏的又是啥资源阿 ?
[解决办法]
2)创建了线程,但是线程退出时没有线程调用pthread_join()
线程资源没有回收,如果持续创建线程,到一定数量后将不能再创建!
可以在创建的线程中使用pthread_detach(pthread_self()),主线程就可以不调用pthread_join()
1)只有pthread_cleanup_push()  直到进程退出都 没有调用pthead_cleanup_pop()
pthread_cleanup_push压栈的函数在3种情况下会调用, 该线程调用pthread_exit()、其它线程调用pthread_cancel(pid)、该线程调用pthread_cleanup_pop(int execute)
不属于以上三种情况时,如果进程不退出,估计就是有压栈信息的内存泄露

热点排行