2.5 调试分析器

调试分析器

Minecraft提供了一个调试分析器(Debug Profiler),可用于查找耗时的代码。特别考虑TickEvents和Ticking TileEntities,这样的东西对于想要找到时延来源的模组作者和服务器的主人非常有用。

 

使用调试分析器

调试分析器非常易于使用。它需要两个命令: /debug start 启动分析过程,以及 /debug stop 结束。重点是收集数据的时间越多,结果就越好。建议至少让它收集一分钟的数据。

注意: 当然,您只能分析实际到达的代码路径。您要分析的实体和TileEntities必须存在于世界中以显示在结果中。 停止调试器后,它将创建一个新文件,它可以在运行目录的debug子目录中找到。文件名将使用日期和时间格式为profile-results-yyyy-mm-dd_hh.mi.ss.txt

 

读取性能分析结果

在顶部,它首先告诉你它运行了多长时间(以毫秒为单位)以及在那段时间内运行了多少ticks。

在此之下,您将找到类似于以下的信息:

[00] levels - 96.70%/96.70%
[01] |   World Name - 99.76%/96.47%
[02] |   |   tick - 99.31%/95.81%
[03] |   |   |   entities - 47.72%/45.72%
[04] |   |   |   |   regular - 98.32%/44.95%
[04] |   |   |   |   blockEntities - 0.90%/0.41%
[05] |   |   |   |   |   unspecified - 64.26%/0.26%
[05] |   |   |   |   |   minecraft:furnace - 33.35%/0.14%
[05] |   |   |   |   |   minecraft:chest - 2.39%/0.01%

这是对每个部分的含义的一个简要解释

[02]

tick

99.31%

95.81%

该部分的深度

该部分的名称

它占上一级时间的百分比。对于第0层,它是总tick时间的百分比,而对于第1层,它是0层所用时间的百分比。

第二个百分比是从整个tick时间中花了多少时间。

 

分析你自己的代码

调试分析器具有对EntityTileEntity的基本支持。如果您想要分析其他内容,您可能需要手动创建您的部分,如下所示:

Profiler#startSection(yourSectionName : String);
//The code you want to profile
Profiler#endSection();

你可以从一个实例WorldMinecraftServerMinecraft实例那里得到Profiler。现在,您只需要在文件中搜索要分析的部分的名称。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值