J2ME アプリケーションを作成しています。そのうちの 1 つは、ディレクトリの内容を定期的にポーリングし、新しいものがあれば画面に表示するものです。これは、UI フォームがそれ自体へのポインターを使用してポーリング スレッドを起動し、ポーリング スレッドが何かを見つけたときにフォームにコールバックし、同期されたメソッドを呼び出して表示を更新することで実現しました。これはうまくいくようです。
私が持っている質問はこれです。C#/.NET では、非 UI スレッドで UI を更新するのは良くないことを知っています。これを処理する正しい方法は、UI スレッドに委譲することです。
たとえば、次のとおりです。
public void DoSomeUIThing()
{
if (this.uiComponent.InvokeRequired)
{
this.uiComponent.Invoke(someDelegateThatCallsBackToThis);
}
else
{
this.uiComponent.Text = "This is the update I want to happen";
}
}
このプロセスを管理する方法に相当する J2ME はありますか? Javaはどうですか?それとも、Java/J2ME のほうがこれに関してうまくいくのでしょうか? そうでない場合、これはどのように行われますか?
[編集] Swing は、SwingUtilities.invokeLater() および invokeAndWait() メソッドを介して私が求めていることをサポートしているようです。J2ME に相当するフレームワークはありますか?