关于AttachCurrentThread和DetachCurrentThread的故事
来源:互联网 发布:淘宝口腔无影灯 编辑:程序博客网 时间:2024/05/24 06:50
关于AttachCurrentThread和DetachCurrentThread的故事
当在一个线程里面调用AttachCurrentThread后,如果不需要用的时候一定要DetachCurrentThread,否则线程无法正常退出。
- static JNIEnv *Adapter_GetEnv()
- {
- int status;
- JNIEnv *envnow = NULL;
- status = (*g_JavaVM)->GetEnv(g_JavaVM,(void **) &envnow, JNI_VERSION_1_4);
- if(status < 0)
- {
- status = (*g_JavaVM)->AttachCurrentThread(g_JavaVM,&envnow, NULL);
- if(status < 0)
- {
- return NULL;
- }
- g_bAttatedT = TRUE;
- }
- return envnow;
- }
- static void DetachCurrent()
- {
- if(g_bAttatedT)
- {
- (*g_JavaVM)->DetachCurrentThread(g_JavaVM);
- }
- }
07-24 15:02:23.874: DEBUG/dalvikvm(4932): threadid=9: thread exiting, not yet detached (count=0)
07-24 15:02:23.874: DEBUG/dalvikvm(4932): threadid=9: thread exiting, not yet detached (count=1)
07-24 15:02:23.874: ERROR/dalvikvm(4932): threadid=9: native thread exited without detaching
07-24 15:02:23.874: ERROR/dalvikvm(4932): VM aborting
- 顶
- 0
- 踩
0 0
- 关于AttachCurrentThread和DetachCurrentThread的故事
- 关于AttachCurrentThread和DetachCurrentThread的故事
- 关于AttachCurrentThread和DetachCurrentThread的故事 2012-08-01 18:25 14325人阅读 评论(0) 收藏 举报 版权声明:本文为博主原创文章,未经
- JNI层AttachCurrentThread与DetachCurrentThread
- (g_jvm)->AttachCurrentThread(&env, NULL) 后使用 (g_jvm)->DetachCurrentThread();程序报错
- AttachCurrentThread
- 关于爱情和婚姻的经典故事
- 关于爱情和亲情的小故事
- 关于hash_map和map的小故事
- 关于mysql优化和索引的故事
- 关于atoi和itoa的故事
- 关于`width`和`max-width`的故事
- 关于爱的故事
- 关于手机的故事
- 关于招聘的故事
- 关于三文鱼的故事
- 关于管理的故事
- 关于房子的故事
- 第2周项目3:小试循环(3)
- 解决Struts2.3.2配合Tomcat8出现could't clear cache问题
- 简介AngularJS中使用factory和service的方法
- 要么读书,要么健身
- 数据结构与算法一:算法复杂度分析
- 关于AttachCurrentThread和DetachCurrentThread的故事
- 第2周项目3:小试循环(4)
- 6 Javascript:函数
- 递归将整数转字符串
- 颠倒的价牌
- 面试中的 10 大排序算法
- 操作系统之进程的描述与控制
- php中的魔术方法
- linux下nginx配置之phpmyadmin与web