首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用输入event.Android

无法使用输入event.Android
EN

Stack Overflow用户
提问于 2012-08-14 17:40:15
回答 1查看 268关注 0票数 3

这是我经常在我的application.Can中看到的错误,有没有人知道这个错误的原因。

错误有两行:

代码语言:javascript
复制
     consumer ~ Error -1 pinning ashmem fd 69
' ~ Failed to consume input event.  status=-2147483648
EN

回答 1

Stack Overflow用户

发布于 2014-05-15 19:09:38

我最近修复了我工作的应用程序中的类似错误。问题出在有buggy的本机代码中,它关闭了两次文件描述符,这意味着它首先在Close方法中关闭它,然后在析构函数中再次调用Close,而没有检查文件描述符是否已经关闭。

本机open函数以文件描述符的形式返回,这是第一个空闲的最小数字。因此,上面的bug是关闭描述符,它在一次关闭和第二次调用之间被重用。大多数情况下,parcel使用了这个描述符。

在搜索此bug的解决方案时,我发现此错误发生在两种情况下:

当打开的文件描述符太多时发生泄漏,这可能表明当代码两次关闭文件描述符时存在泄漏

调试这并不容易,很难重现,而且如果你不使用本机代码,那么就更难理解问题了。

如果没有本机代码,则在尝试与已关闭window通信时可能会出现此错误。就像你没有关闭一些对话框,但关闭了拥有它的活动。我从来没有经历过这样的情况,但是,我将其添加为一个提示。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11949609

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档