新しいユーザーに関する情報を収集するjFrameウィンドウ(newUserPanel)を作成しました。データを受け入れた後、すべてのユーザーを収集する ArrayList に新しいユーザーを追加します。問題は、更新された ArrayList をファイルに (シリアル化によって) 保存することです。
(これはすべて 1 つの jButton の下にあります!)
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
newUserPanel tempPanel= new newUserPanel ();
dodana.setVisible(true);
User tempUser= new User();
tempUser= dodana.getUser();
listOfUsers.add(tempUser);
}});
try {
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("usersList.obiekt"));
out.writeObject(listOfUsers);
out.close();
} catch (IOException i) {
i.printStackTrace();
}
newUserPanel が新しい Thread であるためと思われるため、両方が同時に発生します。新しいユーザーが確認されるまでシリアル化を停止するにはどうすればよいですか?