本文整理汇总了C++中wyAAL::deinit方法的典型用法代码示例。如果您正苦于以下问题:C++ wyAAL::deinit方法的具体用法?C++ wyAAL::deinit怎么用?C++ wyAAL::deinit使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类wyAAL
的用法示例。
在下文中一共展示了wyAAL::deinit方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: commonDestroy
wyDirector_android::~wyDirector_android() {
// if background running is enabled
if(m_allowBackgroundRunning) {
pthread_mutex_lock(&gCondMutex);
if(m_backgroundRunning) {
if(pthread_cond_init(&sBackgroundLooperCond, NULL) == 0) {
m_backgroundRunning = false;
pthread_cond_wait(&sBackgroundLooperCond, &gCondMutex);
pthread_cond_destroy(&sBackgroundLooperCond);
}
}
pthread_mutex_unlock(&gCondMutex);
}
// call gl view
JNIEnv* env = wyUtils::getJNIEnv();
if(env != NULL) {
if(m_glView != NULL) {
if(!m_paused)
env->CallVoidMethod(m_glView, g_mid_WYGLSurfaceView_onPause);
env->DeleteGlobalRef(m_glView);
m_glView = NULL;
}
}
// if resource decoder is set, check whether it is wyJavaResourceDecoder
if(gResDecoder) {
wyJavaResourceDecoder* jrd = dynamic_cast<wyJavaResourceDecoder*>(gResDecoder);
if(jrd)
delete jrd;
}
// common destroy
commonDestroy();
// release listener
wyArrayEach(m_jLifecycleListeners, j_releaseListener, NULL);
wyArrayDestroy(m_jLifecycleListeners);
// deinit aal
if(gAAL.deinit)
gAAL.deinit();
// delete context ref
if(env != NULL) {
if(m_context != NULL) {
env->DeleteGlobalRef(m_context);
m_context = NULL;
}
}
// global deinit
globalDeInit(env);
// unload sal lib
if(sAALHandler != NULL) {
/*
* 不要close这个东西, 可能是因为android底层有什么bug, 导致重复载入卸载45
* 次之后就会出现问题. 而android上的dlopen又不支持RTLD_NODELETE这个flag,
* 所以只能不close它, 就没事了
*/
// dlclose(sAALHandler);
sAALHandler = NULL;
}
// nullify gVM
gVM = NULL;
// free my self
gDirector = NULL;
}