gpt4 book ai didi

java - Java 中退出 JFrame 和 TCP 通信之前关闭资源

转载 作者:行者123 更新时间:2023-11-30 05:04:10 25 4
gpt4 key购买 nike

1.我正在编写一个基于 TCP 通信的聊天应用程序。我正在使用 NetBeans,我想在退出 JFrame 时向默认的 EXIT_ON_CLOSE 添加功能。原因当然是因为我想清理资源并安全地结束线程。如何调用一个方法来清除资源,然后安全地关闭 JFrame 并结束进程。

2.我需要实现服务器端。服务器有“Socket”的列表/ HashMap /队列及其聊天昵称。是否有任何简单的设计模式可以正确完成它,因为我不想重新发明轮子。

谢谢。

最佳答案

在尝试了安德鲁的建议并尝试自己解决这个问题之后,这就是我所做的。就我而言,我将数据保存到数据库,而您则关闭 TCP 通信。这个想法保持不变:在关闭窗口和程序实际关闭之间我们有工作要做。

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.addWindowListener(new WindowListener() {
@Override
public void windowOpened(WindowEvent e) {
// TODO Load all data here
}
@Override public void windowClosing(WindowEvent e) {
// TODO Save the data
}

@Override public void windowIconified(WindowEvent e) {}
@Override public void windowDeiconified(WindowEvent e) {}
@Override public void windowDeactivated(WindowEvent e) {}
@Override public void windowActivated(WindowEvent e) {}
@Override public void windowClosed(WindowEvent e) {}
});

关于java - Java 中退出 JFrame 和 TCP 通信之前关闭资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5689807/

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