Threading differences in Java Runtime for Symbian (Known Issue)
There are differences in Java threading in S60 Editions and in Symbian^3: more specifically, in S60 3rd Edition, Feature Pack 2 and S60 5th Edition (which use either Java Runtime 1.3 for S60 or Java Runtime 1.4 for S60) some of the system threads run in a higher priority than any application thread which allows the system threads to make call backs and run the application code.
This can lead to potential problems if the system threads are involved in resource-consuming tasks like continuous looping. In Symbian^3 (which uses Java Runtime 2.1 for Symbian), the threading priorities have been changed so that most of the threads running in the Java process share the same native priority EPriorityNormal which resolves the threading issues.
For the affected Editions, the Java application myst be redesigned and implemented accordingly. For example, the resource-consuming tasks like continuous looping or changing Displayables in different threads during runtime are potential areas of interest which would need to be addressed. In addition, threading variation in the application code for the different Editions can be done by using the related system information which can be acquired by using the system property microedition.platform as described in the Java Developer's Library.