gpt4 book ai didi

java - libGDX : freezing my game when I call server host

转载 作者:行者123 更新时间:2023-11-30 06:46:38 27 4
gpt4 key购买 nike

我想像其他游戏一样创建每日奖励,因此我调用 Apache 中的 commons-net-3.6 库来从互联网获取当前时间。然后我写了这段代码:

NTPUDPClient timeClient = new NTPUDPClient();
String TIME_SERVER = "time-a.nist.gov";
InetAddress inetAddress = InetAddress.getByName(TIME_SERVER);
TimeInfo timeInfo = timeClient.getTime(inetAddress);
long returnTime = timeInfo.getMessage().getTransmitTimeStamp().getTime();
Date time = new Date(returnTime);
System.out.println(time);

但是,有时工作正常,有时不起作用并卡住我的游戏(没有响应),为什么?

抱歉我的英语不好。

最佳答案

您是否在单独的线程上调用此代码?

这不能在 libgdx 渲染线程上完成,该线程必须每秒至少调用 60 次。向服务器发出请求非常耗时,并且会阻塞线程直到完成。如果请求不是异步的,您必须在单独的线程上运行它。

最简单的方法(但不是最好的)就是这样做

new Thread() {
public void run(){
//Here you need to do the request
}
}.start();

您可以在此处找到更多信息 https://docs.oracle.com/javase/tutorial/essential/concurrency/runthread.html

关于java - libGDX : freezing my game when I call server host,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43578772/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com