Sun Studio 12 Update 1:使用 dbx 调试程序

call 命令

在本地模式中,call 命令用于调用过程。在 Java 模式中,call 命令用于调用方法。

本地模式语法

call procedure ([parameters]) [-lang language] [-resumeone]

其中:

language 是被调用过程的语言。

procedure 是过程的名称。

parameters 是过程的参数。

也可以使用 call 命令调用函数;要查看返回值,请使用 print 命令(请参见print 命令)。

有时,调用的函数会到达断点。可以选择使用 cont 命令继续执行(请参见cont 命令),或使用 pop -c 中止调用(请参见pop 命令)。被调用函数引发段故障时,也可以使用后者。

-lang 选项用于指定被调用过程的语言并告知 dbx 使用指定语言的调用约定。要被调用的过程先前编译时未显示调试信息并且 dbx 不知道如何传递参数的情况下,此选项很有用。

-resumeone 选项表示调用过程时仅恢复一个线程。有关更多信息,请参见恢复执行

Java 模式语法

call [class_name.|object_name.] method_name ([parameters]}

其中:

class_name 是 Java 类的名称,可以使用包路径(使用句点 (.) 作为限定符,例如 test1.extra.T1.Inner),也可以使用完整路径名(前面加磅符号 (#),并使用斜线 (/) 和美元符号 ($) 作为限定符;例如 #test1/extra/T1$Inner)。如果使用 $ 限定符,请使用引号将 class_name 引起来。

object_name 是 Java 对象的名称。

method_name 是 Java 方法的名称。

parameters 是方法的参数。

有时,调用的方法会到达断点。可以选择使用 cont 命令继续执行(请参见cont 命令),或使用 pop -c 中止调用(请参见pop 命令)。如果被调用方法引发段故障,也可以使用后者。