在调用eXosip_init()时,
经常莫名的不返回!
但是逐行跟踪的话就 没有问题
最后定位到下面的代码不返回
也就是说 如果连续调用jpipe时的话就可能不返回!!
exconf.c
#ifdef OSIP_MT
/* open a TCP socket to wake up the application when needed. */
eXosip.j_socketctl = jpipe ();
if (eXosip.j_socketctl == NULL)
return -2;
eXosip.j_socketctl_event = jpipe ();
if (eXosip.j_socketctl_event == NULL)
return -3;
#endif
然后跟踪jpipe ,猜测是accept的问题
也就是下的一段代码
jpipe.c
connect (my_pipe->pipes[1], (struct sockaddr *) &raddr, sizeof (raddr));
my_pipe->pipes[0] = accept (s, NULL, NULL);
的问题
没有找到什么好的办法去处理上面的为题
最后用了一个比较笨的办法
eXosip.j_socketctl = jpipe ();
if (eXosip.j_socketctl == NULL)
return -2;
Sleep(100); //添加的代码
eXosip.j_socketctl_event = jpipe ();
if (eXosip.j_socketctl_event == NULL)
return -3;
后记:
根据推断 可能是在非阻塞的connect 后 链接丢失 然后就被阻塞在了accept中了!
分享到:
相关推荐
exoSip开发手册详细版,带word文档!!!!!!!!!1
exoSip开发手册.pdf
exosip开发手册 exosip 教程
使用Android NDK编译Android平台的eXosip库,有静态库和动态库。
介绍exoSip开发流程和调用方法,及有关宏定义说明,适合初学者查阅.
该程序用VC书写,它可实现基于EXOSIP协议栈的终端,用于注册服务器部分
exOsip使用
osip和exosip的使用 osip.dll和osip.lib的编译
exosip 开发文档,英文英文, 新版本 eXosip用户手册
exoSip开发者手册.doc oSip
exosip和jsip源码
这个是libexosiop2-3.0.1
eXosip2 has support for: * registrations. (REGISTER) * call initiation and modification. (INVITE, re-INVITE) * other methods within calls (INFO, OPTIONS, UPDATE) * call transfer. (REFER) * ...
eXosip开发手册,osiop协议栈,sip协议
工作需要收集到的sip+osip+exosip资料集合。内容如下 exoSip开发手册.pdf libeXosip2-3.3.0.tar.gz libosip2-3.3.0.tar.tar libosip reference manual.pdf oSIP开发者手册.doc oSIP协议栈(及eXoSIP,Ortp等)使用入门....
exoSip+开发者手册,在源文件的基础上进行了整理,编排了格式,使整个文档更加清晰,明了.我自己打印了一份,也在学习中......
exoSip+开发者手册.doc exoSip 开发者手册 ——本手册指导开发者利用exoSip 栈开发用户代理 原文标题:exoSIP User Manual
eXosip开发者手册,详细描述了eXosip2协议栈的使用方法,包括关键接口的说明