Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Java SE 综合讨论区  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 各位大侠求救,反编译的代码,不知道什么意思
neatrain





发贴: 2
积分: 0
于 2005-08-17 22:33 user profilesend a private message to usersearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
各位大侠,我下了一个文件用来学习线程的同步问题,结果没有源码,我就把那个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;
}

}




话题树型展开
人气 标题 作者 字数 发贴时间
4197 各位大侠求救,反编译的代码,不知道什么意思 neatrain 3108 2005-08-17 22:33
3462 Re:各位大侠求救,反编译的代码,不知道什么意思 ranchgirl 359 2005-08-18 00:37

flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   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