我有我在其中绘制的 LibGDX 应用程序和一个用于客户端或服务器的线程。使用 Kryonet 完成连接。当您的对手创建某事时,会收到一条消息,链接如下:
public void received(Connection con, Object object) {
TroopMessage tm = (TroopMessage)object;
fortress.map.addSoldier(tm.kind, true);
System.out.println("recieved");
connection = con;
}
当这个回调被调用(并且它是正确的)时,我得到“在当前线程中找不到 OpenGL 上下文”。我认为它正在寻找 MyClient 线程中的对象堡垒。我想调用 fortress.map.addSoldier,它指的是当前存在于另一个线程中的对象。
public class Fortress extends Game implements ApplicationListener{
private OrthographicCamera camera;
private SpriteBatch batcher;
public static MyServer server;
public static MyClient client;
public static Map map;
[....]
如何从另一个线程调用该方法?
提前致谢