不使用ACE_Main的情况下初始化ACE和反初始化ACE

时间:2020-12-16 19:42:09

    有的时候应用程序的主函数不能用ACE_Main,比如在Win32的GUI程序里面,特别是在现有的应用GUI程序中增加ACE支持时。此时为正常使用需要用到ACE的两个特殊的类:

ACE_OS_Object_Manager
ACE_Object_Manager

    使用ACE_Main是,这两个类的实例自动被管理好。不能使用ACE_Main是,需要自己创建他们的实例:

ACE_OS_Object_Manager ace_os_object_manager;
ACE_Object_Manager ace_object_manager;

    在程序初始化时调用下面的方法初始化ACE:

ace_os_object_manager.init();
ace_object_manager.init();

    程序退出前调用下面的方法反初始化ACE,否则应用程序可能不能正常退出:

ace_os_object_manager.fini();
ace_object_manager.fini();