PJSIP UA分析(1)--PJSUA主函数

 

1 int main(int argc, char *argv[])
2 {
3 do {
4 app_restart = PJ_FALSE; //PJ_FALSE是一个宏,一旦用户调用pjsua可执行文件进入该循环,那么默认只执行一次退出
5 //如果需要再次循环,那么在下面函数中会重置为PJ_TRUE
6 if (app_init(argc, argv) != PJ_SUCCESS)//如果用户在调用pjsua可执行文件时就配置了参数,那么将在app_init中初始化各种数据结构并用用户指定的参数赋值
7 return 1;
8
9 setup_signal_handler();//设置信号处理函数,如果是win32下开发需要设置,linux下该函数不做任何处理
10
11 app_main();//执行consold的处理,也就是处理用户指令的部分。
12 app_destroy();//销毁相关资源
13
14 /* This is on purpose */
15 app_destroy();
16 } while (app_restart);
17
18 return 0;
19 }

 

app_restart是一个pj_bool_t的类型,pj_bool_t在pjlib/include/pj/types.h中定义:

 

 

1 /** Boolean. */
2 typedef int pj_bool_t;

 

app_restart是一个全局变量,在pjsip-apps/src/pjsua/pjsua_app.c中定义:

 

 

1 pj_bool_t app_restart;
 

 

 

posted @ 2010-11-07 15:39  茫茫深海一条鱼  阅读(1782)  评论(0编辑  收藏  举报