-
Redmun
- Posts: 3
- Joined: Mon May 24, 2010 5:55 pm
Gaming window
I'm not sure if this is a bug, or a problem with my system, but my gaming window doesn't open anymore, does anyone know how to sort this out? xx
-
sabinati
- Posts: 15527
- Joined: Mon Jul 13, 2009 4:25 am
- Location: View active topics
Re: Gaming window
check your running processes and end any javaw that you see and try again
-
loftar
- Posts: 9096
- Joined: Fri Apr 03, 2009 7:05 am
- Location: Your character database
Re: Gaming window
I finally had what I think is this bug happen to myself, so now I've finally got some info on it.
It appears that one of the resource loader threads and the main thread deadlock on each other somewhere deep inside the JNLP client code. I haven't analyzed it in detail yet, but let me post the stack traces of the locked threads both for the sake of noting them to myself and giving the information to someone else who might want to try solving it.
Resource loader:
Main thread:
It appears that one of the resource loader threads and the main thread deadlock on each other somewhere deep inside the JNLP client code. I haven't analyzed it in detail yet, but let me post the stack traces of the locked threads both for the sake of noting them to myself and giving the information to someone else who might want to try solving it.
Resource loader:
Code: Select all
Name: Haven resource loader
State: BLOCKED on com.sun.jnlp.JNLPClassLoader@11756a4 owned by: Haven main thread
Total blocked: 2 Total waited: 0
Stack trace:
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:247)
java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:604)
java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
com.sun.deploy.cache.CacheEntry$12.run(CacheEntry.java:1978)
java.security.AccessController.doPrivileged(Native Method)
com.sun.deploy.cache.CacheEntry.readSigners(CacheEntry.java:1943)
com.sun.deploy.cache.CacheEntry.getCodeSourceCache(CacheEntry.java:1104)
com.sun.deploy.cache.CacheEntry.getCodeSources(CacheEntry.java:1179)
com.sun.deploy.cache.CachedJarFile.getCodeSources(CachedJarFile.java:634)
com.sun.deploy.cache.DeployCacheJarAccessImpl.getCodeSources(DeployCacheJarAccessImpl.java:56)
com.sun.deploy.security.CPCallbackHandler$ParentCallback.openClassPathElement(CPCallbackHandler.java:139)
- locked com.sun.deploy.security.CPCallbackHandler$ParentCallback@2ee7e5
com.sun.deploy.security.DeployURLClassPath$JarLoader.getJarFile(DeployURLClassPath.java:744)
com.sun.deploy.security.DeployURLClassPath$JarLoader.access$700(DeployURLClassPath.java:625)
com.sun.deploy.security.DeployURLClassPath$JarLoader$1.run(DeployURLClassPath.java:692)
java.security.AccessController.doPrivileged(Native Method)
com.sun.deploy.security.DeployURLClassPath$JarLoader.ensureOpen(DeployURLClassPath.java:684)
com.sun.deploy.security.DeployURLClassPath$JarLoader.<init>(DeployURLClassPath.java:646)
com.sun.deploy.security.DeployURLClassPath$3.run(DeployURLClassPath.java:400)
java.security.AccessController.doPrivileged(Native Method)
com.sun.deploy.security.DeployURLClassPath.getLoader(DeployURLClassPath.java:389)
com.sun.deploy.security.DeployURLClassPath.getLoader(DeployURLClassPath.java:366)
- locked com.sun.deploy.security.DeployURLClassPath@510dc2
com.sun.deploy.security.DeployURLClassPath.access$100(DeployURLClassPath.java:69)
com.sun.deploy.security.DeployURLClassPath$1.next(DeployURLClassPath.java:257)
com.sun.deploy.security.DeployURLClassPath$1.hasMoreElements(DeployURLClassPath.java:269)
java.net.URLClassLoader$3$1.run(URLClassLoader.java:416)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader$3.next(URLClassLoader.java:413)
java.net.URLClassLoader$3.hasMoreElements(URLClassLoader.java:438)
sun.misc.CompoundEnumeration.next(CompoundEnumeration.java:27)
sun.misc.CompoundEnumeration.hasMoreElements(CompoundEnumeration.java:36)
sun.misc.CompoundEnumeration.next(CompoundEnumeration.java:27)
sun.misc.CompoundEnumeration.hasMoreElements(CompoundEnumeration.java:36)
sun.misc.Service$LazyIterator.hasNext(Service.java:255)
javax.imageio.spi.IIORegistry.registerApplicationClasspathSpis(IIORegistry.java:188)
javax.imageio.spi.IIORegistry.<init>(IIORegistry.java:121)
javax.imageio.spi.IIORegistry.getDefaultInstance(IIORegistry.java:142)
javax.imageio.ImageIO.<clinit>(ImageIO.java:48)
haven.Resource$Image.<init>(Resource.java:474)
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
java.lang.reflect.Constructor.newInstance(Constructor.java:513)
haven.Resource.load(Resource.java:1014)
haven.Resource.access$300(Resource.java:39)
haven.Resource$Loader.handle(Resource.java:396)
haven.Resource$Loader.run(Resource.java:375)
- locked haven.Resource@328c40
java.lang.Thread.run(Thread.java:619)
Code: Select all
Name: Haven main thread
State: BLOCKED on com.sun.deploy.security.DeployURLClassPath@510dc2 owned by: Haven resource loader
Total blocked: 3 Total waited: 1
Stack trace:
com.sun.deploy.security.DeployURLClassPath.getLoader(DeployURLClassPath.java:343)
com.sun.deploy.security.DeployURLClassPath.getResource(DeployURLClassPath.java:230)
java.net.URLClassLoader$1.run(URLClassLoader.java:194)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:190)
com.sun.jnlp.JNLPClassLoader.findClass(JNLPClassLoader.java:332)
java.lang.ClassLoader.loadClass(ClassLoader.java:307)
- locked com.sun.jnlp.JNLPClassLoader@13936e1
java.lang.ClassLoader.loadClass(ClassLoader.java:296)
- locked com.sun.jnlp.JNLPClassLoader@11756a4
java.lang.ClassLoader.loadClass(ClassLoader.java:248)
java.lang.Class.getDeclaredMethods0(Native Method)
java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
java.lang.Class.getDeclaredMethod(Class.java:1935)
java.awt.Component.isCoalesceEventsOverriden(Component.java:5948)
java.awt.Component.access$500(Component.java:169)
java.awt.Component$3.run(Component.java:5902)
java.awt.Component$3.run(Component.java:5900)
java.security.AccessController.doPrivileged(Native Method)
java.awt.Component.checkCoalescing(Component.java:5899)
- locked java.util.WeakHashMap@95ef17
java.awt.Component.<init>(Component.java:5868)
java.awt.Canvas.<init>(Canvas.java:40)
javax.media.opengl.GLCanvas.<init>(GLCanvas.java:127)
javax.media.opengl.GLCanvas.<init>(GLCanvas.java:90)
haven.HavenPanel.<init>(HavenPanel.java:63)
haven.MainFrame.<init>(MainFrame.java:120)
haven.MainFrame.main2(MainFrame.java:209)
haven.MainFrame.access$100(MainFrame.java:34)
haven.MainFrame$5.run(MainFrame.java:262)
java.lang.Thread.run(Thread.java:619)
"Object-oriented design is the roman numerals of computing." -- Rob Pike
-
loftar
- Posts: 9096
- Joined: Fri Apr 03, 2009 7:05 am
- Location: Your character database
Re: Gaming window
Another JNLP client bug report at the Java forums. It is not directly related, but it does seem that Sun changed something in the JNLP client in JRE 6u19 that's causing problems. I had also just updated from 6u16 to 6u20 when I started getting this problem.
It seems Sun is to blame, then; but is there anything I can reasonably do to work around the problem? It might be possible to call the ImageIO SPI lookup procedure in advance to avoid the simultaneous classloader usage that seems to be causing the problem, but how?
It seems Sun is to blame, then; but is there anything I can reasonably do to work around the problem? It might be possible to call the ImageIO SPI lookup procedure in advance to avoid the simultaneous classloader usage that seems to be causing the problem, but how?
"Object-oriented design is the roman numerals of computing." -- Rob Pike
-
Pacho
- Posts: 712
- Joined: Wed Jun 10, 2009 2:21 am
Re: Gaming window
Oh, so that's what it is? I always wondered why sometimes there was a jerkoff java process left over from playing H&H. It doesn't just happen with jnlps though, my client sometimes does it for god knows what reason.
-
loftar
- Posts: 9096
- Joined: Fri Apr 03, 2009 7:05 am
- Location: Your character database
Re: Gaming window
Well, I've got a potential workaround for it now, at least. Please try the latest client and do tell if it didn't help.
"Object-oriented design is the roman numerals of computing." -- Rob Pike