xen*_*ide 4 api perl profiler profiling
我想知道Devel::NYTProf是否可以用作另一个库中的库。我想做如下的事情
around 'somesub' => sub {
my $orig = shift;
my $self = shift;
start-timing;
$self->$orig(@_);
end-timing;
print '$time';
}
Run Code Online (Sandbox Code Playgroud)
但从它的文档中我无法确定它是否可以这样使用。是否可以?有人可以告诉我我会执行哪些 API 调用吗?
最简单、最可靠的做法是:
DB::enable_profile
和DB::disable_profile
调用(您可能需要首先检查是否已定义子项,以避免在未加载 NYTProf 时发生损坏)。NYTPROF=start=no
在环境中启动 perl。所有这些在Devel::NYTProf 文档中都有非常清楚的解释。
您可以尝试让您的库有条件地加载 NYTProf,但这里的问题是只有在加载 NYTProf后编译的内容才能获取任何跟踪点。这听起来可能完全没问题,因为您只想分析您的库,但不清楚如果您的库调用(或回调)任何其他代码会发生什么,而且我没有测试它。制作简单版本可能会容易得多:)
归档时间: |
|
查看次数: |
468 次 |
最近记录: |