您的位置:首页 > 其它

Ubuntu下运行程序出现的一些bug及记录

2017-07-23 11:48 309 查看
1.该程序运行的环境是在ubuntu 下,程序基本定型.目前的状态是:只是偶尔重启。

     在深入程序内部时,我总是小心翼翼的,把未初始化的变量给初始化了,在类内的成员,需要初始化的,都在构造时初始化了,注意,不是赋值。

  然而,这看起来,效果不是很明显。

2. 在我注意到,程序有时候运行时,出现错误,这个提示是关于线程方面的。

于是,我在网上去找答案,去google ,去我经常去的博客网站,博客园,csdn, 去 stackoverflow.com

        在线程相关函数中,用到了互斥锁,于是有了这个__pthread_tpp_change_priority: Assertion异常

        在这个博客地址中,解决了这个问题,
Assertion异常问题   

我 以为问题就是出现这里,其实不然。 重启的问题依旧存在。  依旧在道路上前进。

3. 开始更改取 摄像机数据 的方式。 在网上找到了live555 开源的项目。

     于是,有了后面的诸多问题。多线程,阻塞了怎么办,任务怎么调度等等。

     我 这边用到了是live555 的客户端程序 ,参考了这个链接 基于live555的客户端程序及ffmpeg解码  

     好了。问题又来了。用live555的代码收到的数据,并不能马上用,说这个数据要好好好处理,比如说解码,转换等。

     解码相关的地方,参考了雷神的一些博客。在此也给出链接:  ffmpeg音视频编码零基础学习  

    这个地方差不多用了一个月了。直到最后,解码出图像,程序看起来运行成功了。其实,还是不然。

    路慢慢其修远兮!  ...

4.  开始对重启的事件进行总结了,几乎是3个小时内,有时是2个小时,程序重启。 而分析程序 重启的条件是:  与服务端 断开了连接。

     这件事情不能这样不了了之。

     现在只能,个个击破了,一个单元功能来测试。一个一个来。

    像往常一样。  程序在重启中,只不过这次重启没成功,一直在打印,open file many 相关的字样,大概意思是打开的文件过多。导致失败...

    这个问题好办,修改系统默认的打开个数,把这数值调大。

    Linux 打开文件数too many open files

 5.  再后来 ,我注释了与window 平台的功能。上线再测试了 。程序重启的频率少了很多,目前还是探索中。

 6.  未完待续。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐