Topic: 各位大侠求救,反编译的代码,不知道什么意思

  Print this page

1.各位大侠求救,反编译的代码,不知道什么意思 Copy to clipboard
Posted by: neatrain
Posted on: 2005-08-17 22:33

各位大侠,我下了一个文件用来学习线程的同步问题,结果没有源码,我就把那个class文件反编译了一下,结果是下面这种东西,求大侠们指点指点。

import java.util.Vector;
import javax.swing.SwingUtilities;

public class OVGUIClient implements Runnable, OVGUIClientInterface
{

private boolean listening;
private final Vector messages = new Vector();
private final OVGUIClientInterface localClient;

public OVGUIClient(OVGUIClientInterface ovguiclientinterface)
{
listening = true;
localClient = ovguiclientinterface;
}

public void processNotifyEvent(StringBuffer stringbuffer)
{
synchronized(messages)
{
messages.add(stringbuffer);
messages.notifyAll();
}
}

public void run()
{
_L2:
StringBuffer stringbuffer;
label0:
{
stringbuffer = null;
synchronized(messages)
{
while(messages.isEmpty() && listening)
{
try
{
messages.wait(5000L);
continue;
}
catch(InterruptedException interruptedexception)
{
return;
}
catch(Throwable throwable)
{
System.out.println("run() exception while waiting for a message, exiting thread"+ throwable);
}
return;
}
if(listening)
{
stringbuffer = (StringBuffer)messages.remove(0);
break label0;
}
}
return;
}
vector;
JVM INSTR monitorexit ;
StringBuffer stringbuffer1 = stringbuffer;
try
{
Runnable runnable = stringbuffer1. new Runnable() {

public void run()
{
try
{
localClient.processNotifyEvent(message);
}
catch(Throwable throwable2)
{
String s;
if(message.length() <= 200)
s = message.toString();
else
s = message.substring(200) + "...";
criticalThread("Runnable.run.processNotifyEvent() " + message.length() + " byte message:\n" + s, throwable2);
}
}

};
if(runnable != null)
SwingUtilities.invokeAndWait(runnable);
else
System.out.println("doIt == null");
}
catch(Throwable throwable1)
{
System.out.println("Runnable()", throwable1);
}
if(listening) goto _L2; else goto _L1
_L1:
}

public void quit()
{
listening = false;
}

}

2.Re:各位大侠求救,反编译的代码,不知道什么意思 [Re: neatrain] Copy to clipboard
Posted by: ranchgirl
Posted on: 2005-08-18 00:37

neatrain wrote:
我下了一个文件用来学习线程的同步问题,结果没有源码,...


Give you all the 源码 to 学习线程的同步问题. You don't need to decompile something to learn.
http://javaalmanac.com/egs/java.lang/BasicThread.html

Also, a Thread related FAQ here, many runnable examples:
http://bobcat.webappcabaret.net/javachina/faq/05.htm

Happy learning and good luck!!!


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923