初始化程序的调试器程序示例
以下示例说明如何在程序执行时查看性能监视器数据。
from a debugger at breakpoint (1)
pm_initialize(filter);
(2) pm_get_program_pthread(pid, tid, ptid, &prog);
... display PM programmation ...
(3) pm_get_data_pthread(pid, tid, ptid);
... display PM data ...
pm_delete_program_pthread(pid, tid, ptid);
prog.events[0] = 2; /* change counter 1 to count event number 2 */
pm_set_program_pthread(pid, tid, ptid, &prog);
continue program如果在调试器下执行的程序没有任何嵌入式性能监视器 API 调用,那么上述方案也将起作用。 唯一的区别是 (2) 和 (3) 处的调用将失败,并且当程序继续时,它将只计算计数器 1 中的事件号 2 ,而不计算其他计数器中的任何值。