Java 连接上的滞后峰值&;离开事件。(爪哇)
经过数小时的努力,我们无法找到解决问题的可行方案,我们无法得出结论,也无法确定这些滞后峰值是如何或为什么发生的。我只想提前感谢大家花时间阅读和回复这条信息 -htp://aikar.co/timings.php?url=7400818 你可以在上面看到,在不同的时间有不同的测试。来自Aikar的时间安排将从不同的角度看待ubuntu粘贴,正在发生的问题来自ChromaHillsRPG。PlayerJoinEvent和PlayerQuitEvent上的维护 下面看看这些事件发生了什么Java 连接上的滞后峰值&;离开事件。(爪哇),java,file,events,minecraft,Java,File,Events,Minecraft,经过数小时的努力,我们无法找到解决问题的可行方案,我们无法得出结论,也无法确定这些滞后峰值是如何或为什么发生的。我只想提前感谢大家花时间阅读和回复这条信息 -htp://aikar.co/timings.php?url=7400818 你可以在上面看到,在不同的时间有不同的测试。来自Aikar的时间安排将从不同的角度看待ubuntu粘贴,正在发生的问题来自ChromaHillsRPG。PlayerJoinEvent和PlayerQuitEvent上的维护 下面看看这些事件发生了什么 Player
Player player = event.getPlayer();
Main.getInstance().setUpData(player);
Group group = Main.getInstance().getTitle(player);
if(group == null){
return;
}
player.setScoreboard(Bukkit.getScoreboardManager().getNewScoreboard());
PlayerSkill pSkills = Main.getInstance().pSkills.get(player.getUniqueId().toString());
int mainLevel = pSkills.getLevelHandler().getLevel();
String gName = group.getPrefix();
String prefix = Main.getInstance().getConfig().getString("name-format-1");
String level = Main.getInstance().getConfig().getString("name-format-2").replace("%level%", String.valueOf(mainLevel));
prefix = prefix.replace("%Group-Pre%", gName);
prefix = prefix.replace("%GroupPre%", gName);
prefix = ChatColor.translateAlternateColorCodes('&', prefix);
if(prefix.length() > 16){
Bukkit.getLogger().severe("HEYO! Too long there for the prefix...." + prefix.length());
return;
}
level = ChatColor.translateAlternateColorCodes('&', level);
if(!player.hasPermission("rpg.noshow")){
NametagAPI.setPrefix(player.getName(), prefix);
NametagAPI.setSuffix(player.getName(), level);
}
再次感谢您的回复,如果需要,我可以提供更多信息。
我们的内部开发人员和团队中没有人能够计算出每次玩家离开时CPU如何保持在15-40%左右的峰值。我们相信这与插件访问文件有关
谢谢,
Luke.看起来是外部插件名TagAPI。我可以肯定地说,这是因为它必须发送大量的播放器数据包,而事实上你称之为onJoin更清楚地表明这是问题所在。
我们认为这与插件访问文件有关。
可能是的。启动服务器时是否尝试过缓存名称格式?