博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[J2ME Q&A]真机报告MontyThread -n的错误之解释
阅读量:7119 次
发布时间:2019-06-28

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

[友情提示]

首先你需要告诉大家,测试的真机是哪一款手机,比如Nokia6600,据我所观察,好像这种错误在Nokia6600上发生的比较多;

其次,你可以通过代码调试得知发生此错误的时候,你的代码在做哪方面的执行,比如HttpConnection联网?比如用GraphicsDrawRegion?还是在关闭整个应用程序的时候?

 

我们总结一下:

[When]

Nokia的几款机器,用了Monty/Monte Virtual Machine

MontyThread的错误,一般是VM报告的错误,我们猜测当时VM正准备关闭一个或多个正处于活动状态的Thread

所以有时候你看到应用程序MIDlet被关闭后,隔了一小会儿,突然报告一个MontyThread的错误,这可能是因为你的某一个线程处于阻塞状态,而正在被试图强行关闭。

另外一种情况是,使用JSR135(Mobile Media API[MMAPI])并用错误的编码器在错误的音频流上,也会导致MontyThread异常错误。

[HowTo]

你知道那句名言的,J2ME的那句,“write once, debug everywhere”

So,尽量在真机上用Alert来反复进行二分法测试,寻找到异常是从哪里抛出来的。

尽量确定你自己创建的线程能否自己优雅地结束,而不需要VM强制关闭。

 

[参考]

实际上,您可以在《》找到一个相关的错误解释:

Program MontyThread -8

Reason code KERN-EXEC

Reason number 3

 In this case the Panic originates from “MontyThread”which is the VM thread with identifier 8. The Panic has been detected by the Kernel Executive, which has terminated the associated process. The reason for the Panic is indicated by the number 3. In this example to quote the SDK documentation “This panic is raised when an unhandled exception occurs. Exceptions have many causes, but the most common are access violations caused, for example, by dereferencing a NULL pointer. Among other possible causes are: general protection faults, executing an invalid instruction, alignment checks, etc.

但是至于更常见的MotyThread -9-6,则没有解释。

我们尝试在《》中找到相应的错误,比如

KErrBadHandle

-8

"Bad object"

也许和上面所说的“access violations caused”似乎有点像。当然这仅仅是猜测,SymbianOS的错误号可能和MontyThread后面跟的错误号意思不一样。

不管怎么样,我们试图把二者联系到一起:

KErrOverflow

-9

"Overflow"

,如果你看到MontyThread -9的错误,会不会是因为你的程序占用了过多的内存?

KErrArgument

-6

"Bad request"

,如果你看到MontyThread -6的错误,会不会是因为你的程序用了platformRequest来调用真机上不支持的功能了呢?

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

你可能感兴趣的文章
发布一款小软件:和讯博客助手-测试版- 0.3.0
查看>>
[原创]BizTalk 开发系列
查看>>
2013年工作生活总结
查看>>
Unity3D笔记 英保通三 脚本编写 、物体间通信
查看>>
CodeSmith注册错误的解决方法
查看>>
生命与工作
查看>>
Timestamp和String的相互转换 Java
查看>>
Visual Studio 2005常用插件搜罗 [转]
查看>>
梁朝伟变刘德华之山寨实现
查看>>
[OpenStack] OpenStack Essex - Glance 安装部署与命令行详解
查看>>
《止杀令》:蹄穿大漠尘 济世有奇功
查看>>
数据结构基础温故-7.排序
查看>>
咏南中间件+开发框架中秋国庆大促
查看>>
mysql列类型
查看>>
CentOS中JAVA_HOME的环境变量设置
查看>>
Redis,Memcache,mongoDB的区别
查看>>
数据库Sharding的基本思想和切分策略
查看>>
Linux Shell编程入门
查看>>
量化:大数据时代的企业管理
查看>>
The 10 Commandments of Web Design
查看>>