天天看点

live555多线程崩溃问题

工作中用到live555做rtsp客户端,由于是用的多线程获取不同的视频源,偶尔会出现崩溃问题。

最终定位在Locale这个类中,此类用了setlocale函数,然而setlocale不是线程安全。

解决办法有两个:

1、加锁

2、在每个rtsp工作线程函数开头加上一句

_configthreadlocale(_ENABLE_PER_THREAD_LOCALE) 使setlocale只针对当前线程起作用

建议使用第二种方法

继续阅读