我正在将 Haxe 用于游戏并使用 HXCPP 为 C++ 目标进行编译。我试图让内置分析器工作(cpp.vm.Profiler
),但我无法让它创建转储文件。我的代码就这么简单:
if(Input.check(Key.P))
cpp.vm.Profiler.start("profiler.txt");
if(Input.check(Key.M))
cpp.vm.Profiler.stop();
我使用 HaxePunk 作为输入,并断言分析器调用确实正在执行(我确保使用了几个trace
调用)。我使用定义HXCPP_STACK_TRACE
和HXCPP_PROFILER
编译。
我做错了什么,还是错过了什么?
编辑:这里有一些代码,当使用编译时haxe -D HXCPP_PROFILER -D HXCPP_STACK_TRACE -main Main -cpp test
,实际上并没有创建任何明显的“profiler.txt”文件:
class Main
{
static public function main()
{
var bleh = haxe.Timer.stamp();
cpp.vm.Profiler.start("profiler.txt");
while(haxe.Timer.stamp() - bleh < 5.)
{
// Do something I guess
Math.cos(haxe.Timer.stamp());
}
cpp.vm.Profiler.stop();
}
}