博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于LGame中的call to OpenGL ES API with no current context
阅读量:2200 次
发布时间:2019-05-03

本文共 847 字,大约阅读时间需要 2 分钟。

               

那个,今天小弟在一位网友的邮件中,发现有另外一位网友遇到了LGame运行时log中显示call to OpenGL ES API with no current context的问题,估计这个问题挺有代表性的。小弟刚刚本想找到原贴回复,可某SDN改版后评论管理实在太过艰难,所以放弃了查找原帖,仅在博文中大致说明一下。

其实这个call to OpenGL ES API with no current context的意思,就是指当前GLES函数没有在OpenGLES渲染线程中执行,上下文联系丢失,API调用失败罢了(Android中所有GLES线程都是一条唯一且单独的渲染线程,自己在后台不停的刷啊,刷,帧率什么的就是指他一秒能刷几次……)。
这个问题的产生,在于LGame中某些组件的渲染(或其它GLES操作),在GLES线程刷新前或后才获得执行。关键原因在于,LGame自身也是个多线程的存在,其它线程有时会与渲染线程“抢线”,所以才有这项提示产生的可能性(也就是LGame组件调用某些函数时,GLES主线程已经跑完或尚未跑某次渲染循环,所以调用时机错误)。
这种现象虽然被系统提示为GLES错误,其实大家完全不必担心,这根本不会影响程序正常操作(一般只有纹理创建与注销纹理时,才可能真正导致程序异常,不过这种情况已经做了必要的防护),可以理解为Android系统警告您不能这样做罢了。本质上请无视它,首先这种log提示出现的不会很频繁,其次错误的GL调用通常不会得到任何结果,有什么可怕的呢~(为此单独限制组件调用有点,话说小弟曾插上某些真机盯着log看,什么都不运行,光平台自己玩log中还时常显示个Warning,Error之类……)。

————————————————————

昨天下雪,今天居然就化干净了,本来还幻想打雪仗什么的,失落中(-_-)……以上。

           

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!

转载地址:http://ieeub.baihongyu.com/

你可能感兴趣的文章
分布式系统理论基础5:选举、多数派和租约
查看>>
分布式系统理论基础6:Raft、Zab
查看>>
分布式系统理论进阶7:Paxos变种和优化
查看>>
分布式系统理论基础8:zookeeper分布式协调服务
查看>>
搞懂分布式技术1:分布式系统的一些基本概念
查看>>
搞懂分布式技术2:分布式一致性协议与Paxos,Raft算法
查看>>
搞懂分布式技术3:初探分布式协调服务zookeeper
查看>>
搞懂分布式技术4:ZAB协议概述与选主流程详解
查看>>
搞懂分布式技术5:Zookeeper的配置与集群管理实战
查看>>
搞懂分布式技术6:Zookeeper典型应用场景及实践
查看>>
搞懂分布式技术10:LVS实现负载均衡的原理与实践
查看>>
搞懂分布式技术11:分布式session解决方案与一致性hash
查看>>
搞懂分布式技术12:分布式ID生成方案
查看>>
搞懂分布式技术13:缓存的那些事
查看>>
搞懂分布式技术14:Spring Boot使用注解集成Redis缓存
查看>>
搞懂分布式技术15:缓存更新的套路
查看>>
搞懂分布式技术16:浅谈分布式锁的几种方案
查看>>
搞懂分布式技术17:浅析分布式事务
查看>>
搞懂分布式技术18:分布式事务常用解决方案
查看>>
搞懂分布式技术19:使用RocketMQ事务消息解决分布式事务
查看>>