WEB开发网
开发学院软件开发Java 使用 Java Debug Interface(JDI)调试多线程应用... 阅读

使用 Java Debug Interface(JDI)调试多线程应用程序

 2009-10-10 00:00:00 来源:WEB开发网   
核心提示: 本文采用第一种绑定方式阐述如何开发定制的多线程分析器,其它绑定方式可以参照 文档,使用 Java Debug Interface(JDI)调试多线程应用程序(4),绑定过程分为三个步骤:获取连接实例 清单 1. 获取连接实例LaunchingConnectorfindLaunchingConne

本文采用第一种绑定方式阐述如何开发定制的多线程分析器,其它绑定方式可以参照 文档。

绑定过程分为三个步骤:

获取连接实例

清单 1. 获取连接实例

LaunchingConnector findLaunchingConnector() { 
  List connectors = Bootstrap.virtualMachineManager().allConnectors(); 
  Iterator iter = connectors.iterator(); 
  while (iter.hasNext()) { 
   Connector connector = (Connector) iter.next(); 
   if ("com.sun.jdi.CommandLineLaunch".equals(connector.name())) { 
      return (LaunchingConnector) connector; 
    } 
  } 
} 

Bootstrap.virtualMachineManager().allConnectors() 返回所有已知的 Connector 对象实例。选择返回 com.sun.jdi.CommandLineLaunch 连接实例,表示使用第一种绑定方式。

设置连接参数

清单 2. 设置连接参数

/**参数: 
* connector为清单1.中获取的Connector连接实例 
* mainArgs为目标程序main函数所在的类 
**/ 
Map connectorArguments(LaunchingConnector connector, String mainArgs) { 
  Map arguments = connector.defaultArguments(); 
  Connector.Argument mainArg = (Connector.Argument) arguments.get("main"); 
  if (mainArg == null) {  
    throw new Error("Bad launching connector"); 
  } 
  mainArg.setValue(mainArgs); 
  return arguments; 
} 

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:使用 Java Debug

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接