これは初心者の質問です。私は TCP を使用してメッセージを配信する小さなチャット プログラムに取り組んでおり、それを表示するためのシンプルな GUI を持っています。プログラムは完成しましたが、EDT は私をかなり混乱させました...
EDT は「スレッドを拡張する」ように動作しますか? 重いロジックを処理するためにワーカースレッドが必要になるので、それは単一のスレッドだと思いますが、どうやら私は Thread.sleep/yield を実行できません (出力ストリームからメッセージを常に読み取り、jTextArea に追加して実行するwhile ループがあります)。 main Threadで、 false フラグを設定してwhile ループを終了させようとした後、main Threadに譲りましたが、機能しませんでした。)
リスナーがどのように機能するかについてはよくわかりません。それを書かなければならない場合...おそらく、リスナーごとにスレッドを開始します。何かを聞いたらすぐに処理します...しかし、これは間違いなく間違っています。 EDT をマルチスレッド(多くの耳) にしますが、プロセス中はシングルスレッド (脳は 1 つだけ) にします。
これは私の知識不足に違いない!! 頭の中でイベントを発生させる方法がわかりません...ボタンを押すと、Javaは突然知っていますか?私は何かを逃したに違いない。
初めて質問を投稿します。明確であることを願っています