跳过导航链接 | |
退出打印视图 | |
![]() |
Oracle Solaris Studio 12.3:使用 dbx 调试程序 Oracle Solaris Studio 12.3 Information Library (简体中文) |
跟踪会收集程序中发生情况的相关信息并显示这些信息。程序执行到使用 trace 命令创建的断点处时将停止,此时会发送事件特定的 trace 信息行,然后程序继续执行。
跟踪会显示即将执行的每个源代码行。除最简单的程序以外,此跟踪都会产生大量输出。
一种更加有用的跟踪是应用过滤器显示程序中事件的相关信息。例如,可以跟踪每个函数调用、给定名称的每个成员函数、类中的每个函数或每次从函数的退出。还可以跟踪对变量的更改。
可以通过在命令行中键入 trace 命令设置跟踪。trace 命令的基本语法如下:
trace event-specification [ modifier ]
有关 trace 命令的完整语法,请参见trace 命令。
跟踪提供的信息取决于与之关联的事件类型(请参见设置事件规范)。
通常,跟踪输出的显示速度太快。可以使用 dbx 环境变量 trace_speed 控制输出每个跟踪后的延迟时间。缺省延迟时间为 0.5 秒。
要设置跟踪期间每个代码行执行间隔时间(秒),请键入:
dbxenv trace_speed number
可以使用 -file filename 选项将跟踪输出定向到文件。例如,以下命令可将跟踪输出定向到文件 trace1:
(dbx) trace -file trace1
要将跟踪输出恢复为标准输出,请使用 - 表示 filename。跟踪输出始终附加到 filename 后面。每当显示 dbx 提示以及应用程序退出时都会刷新。在执行新的运行或连接后继续运行时总会重新打开 filename。