| Reply | « Previous Thread | Next Thread » |
|
Hi,
My java app brings up the follow panic box from time to time (once in a blue moon): App.Closed Menu ViewSrv 11 I've notice some talk about fixes for this in the symbian discussion boards, but not seen anyone post a possible fix in java. Any ideas what is causing this, and how to prevent the panic box? Thanks in advance. |
|
This is a Symbian painc and is obviously a bug in a JVM. However, if you have to have a workaround..
This Panic is thrown by ViewSrv if your application doesn't respond to the view server in time (10-20 secs usually). Are there any endless loops in your application? Something like Code:
while (true) {
updateGameState();
}
|
|
Hi,
There are not any loops of that nature that I know of. I'm certainly not playing with thread priorities. Most of my code is called from a function in the main paint function. So I'm wondering if I perhaps doing too much in there from time to time. The bug is reported by our publisher's QA dept, and only seems to be after a few hours of play and not very often. I want them to waive the bug if possible. Can you explain a little more about: "This is a Symbian painc and is obviously a bug in a JVM." Are you saying this isnt really a java thing at all? Thanks |
|
Stengun
Most of my code is called from a function in the main paint function. So I'm wondering if I perhaps doing too much in there from time to time. Have you read the recommendations NOT to do big job within your paint and/or keypress handing routines? ;) These are UI-thread routines (not nesessary, but most often) and they are expected to finish as soon as possible. "This is a Symbian painc and is obviously a bug in a JVM." Are you saying this isnt really a java thing at all? Sure. Have you ever read Java specification stating anything about ViewServ? :) However, this is a real world, and if you are not following recommendations and use not recommended ways of doing things you might find JVM implementation bugs, that are not fixed.. just because nobody found them. |
|
These are UI-thread routines (not nesessary, but most often) and they are expected to finish as soon as possible.
It is probably too late to change design of your app this much, but you can try workarounding by adding some yield() calls into your lengthy routings. This will pass flow control out of your thread for a bit of time |
|
Thanks for the help. I'll stick a few yeilds in here and there and see if QA come up with anything. Thanks!
|
| Reply | « Previous Thread | Next Thread » |
| Thread Tools | Search this Thread |
|---|---|