NPTL中的pthread_t

前几天一个程序老是出现段错误,最后实在找不到地方,用gdb单步,发现问题出现在一个回调函数的pthread_cancel中。这个问题就奇怪了。《Unix系统编程》上说了pthread_cancel没有定义必须检测的错误,而且,当ptherad_cancel(pthread_t thread)时,若thread对应的线程不存在,只是返回ESRCH而已。但是问题是,这里就是因为程序第一次执行,除了主线程外,没有其他线程存在,而且因为这个thread变量是全局变量,应该是被自动初始化为零的。也就是说pthread_cancel(0),会引起段错误。

阅读更多

深圳逛记

本周前两天,晚上都加班赶工作,回来实在是没有心情写任何东西。只想玩玩游戏小放松一下,然后大睡。今天,终于把那个该死的演示程序功能基本完成,告一段落。回来记录一下第一次去深圳的感受,也洗去当时从深圳回来那个标准“标题党“行为放朋友们鸽子的嫌疑。而且,去面壁的同学,估计此时已经面壁结束,有空来再拍砖了~

阅读更多