java - Java 服务器内的模式式编程

标签 java modal-dialog

对于我的游戏,我让它在两台服务器上运行(一台用于游戏,一台用于登录系统)。他们都需要相互交互,有时还需要询问有关其他服务器中其他内容的状态的问题。

对于此示例,游戏服务器将询问登录服务器是否有玩家尝试登录:

public boolean isLoggingIn(int accountId) {
//Form a packet to send.
int retVal = sendData();
return retVal > 0;
}

显然我会使用 int,以便可以返回 boolean 值以外的信息。

我的问题是,如何让这种模式式编程工作?它的工作方式就像 JFileChooser 的 getOpenDialog() 函数一样。

另外,我应该提到,多个线程可以同时调用此方法。

最佳答案

我认为模态是指尝试阻止除一个之外的所有操作。我强烈怀疑这种风格会给你带来麻烦。模态交互是一种锁定形式,因此不太能容忍挂起和断开连接等。为了使其具有容忍性,您需要超时和清理代码,以应对有人进入某种模式但没有进一步发生的情况。 (即他们关闭了笔记本电脑,或者游戏崩溃了,他们拔掉了网络电缆等)。

如果我是你,我会尝试从身份验证和授权方面考虑问题。

关于java - Java 服务器内的模式式编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12115540/

相关文章:

jQuery Bootstrap 多个模态,如何仅隐藏事件/顶部模态

c# - 显示模态对话框并获取结果

javascript - jquery 模态对话框在 mock 我 - 对话框显示为无模式

ruby-on-rails - 如何将工作 rails 联系形式转换为 Bootstrap 模式?

java - hibernate 域模型

java - 如何在Java中创建一个对象的多个实例

javascript - GraalVM 如何将 java List 对象传输到 javascript,以便我可以在它们上制作 .push() 和 .forEach()?

java - 为什么 clone() 没有按预期工作?

java - 如何打印引号中的整数

ios - 关闭自定义模式/覆盖不更新 SwiftUI 中的 View 内容