PJSIP dialog inv销毁

      PJSIP的Diaglog(类型为pjsip_dialog) 可以被外部调用,同时PJSIP有自己的机制销毁用户创建的

Dialog,如PJSIP内部销毁了某个Diaglog,用户在不知情的情况下继续使用该Dialog,可能会导致程序

崩溃。具体效销毁的过程:PJSIP在inv_set_state方法检测Dialog关联的inv(类型为pjsip_inv_session)

状态,inv状态为PJSIP_INV_STATE_DISCONNECTED时 通过调用pjsip_dlg_dec_session将Diaglog

的引用计数减一(PJSIP内部有机制当Dialog引用计数为0时 会被销毁掉)。

    所幸PJSIP设计者考虑到了这个问题,并留了回调接口on_state_changed,在销毁资源前通知用户

代码片段如下:

  

                                 图1 释放资源代码片段

      

需交流可加QQ群1038388075,766718184 或者QQ3501870

 博主提供Ffmpeg、GB28181视频教程

播放地址: http://www.iqiyi.com/u/1426749687

视频下载地址:http://www.chungen90.com/?list_53

 Demo下载地址: http://www.chungen90.com/?list_52

posted @ 2019-03-14 15:28  王纲  阅读(581)  评论(0编辑  收藏  举报