JavaEE5(EJB3.0)でワーカスレッドのようなものを実現するにはどうすればよいでしょうか。人力検索はてな人力検索はてなモバイル版を表示しています。PC版はこちらJavaEE5(EJB3.0)でワーカスレッドのようなものを実現するにはどうすればよいでしょうか。クライアント(Webブラウザ)から要求->サーバが要求を受け取ってEJBコンテナのインスタンスを生成、メソッドを実行。->(1)EJBコンテナのメソッドの中で処理中フラグをDBに永続化。->(2)ワーカスレッドを起動し、クライアントに受け付けたことをレスポンスする。->(3)ワーカスレッドの中で重い処理を実行し、完了すると完了フラグをDBに永続化。managerはスレッドセーフでないので無理?というようなことがWebや書籍に書いてありました。上記のような処理を実現するためには、通常どのような実装を行うのか、というのが知りたい内容になります。▽最新の回答へ▽1●yamaneroomワーカースレッドを作成することは可能だが、それとクライアントへのレスポンスは全く別問題。ワーカースレッドは一般的にバックグラウンドジョブになるので、そこで重たい処理をさせるのは感心しない。ワーカースレッドを作成することは可能だが、それとクライアントへのレスポンスは全く別問題。(1)(2)(3)を行わずにそのまま重たい処理を実行させるとその間クライアントへ応答が戻らないというイメージを持ってしまっていたのですが、そうではない、ということでしょうか。ワーカースレッドは一般的にバックグラウンドジョブになるので、そこで重たい処理をさせるのは感心しない。ここでいうバックグラウンドジョブ、というのがどういったものを指しているのか理解できていないのですが、私が"ワーカスレッド"という単語で意図したものは、SwingでいうところのSwingWorkerみたいなもので、重たい処理をさせるためのスレッドです。http://itpro.nikkeibp.co.jp/article/COLUMN/20070413/268205/こちらはJavaSEの解説ですが、ちょうどこんな感じで、EJBコンテナのメインスレッドで重い処理を行うとクライアントにレスポンスが返らないままになるのではないかなあ...と。関連質問PHPで作成したWEBページで送信後、画面が真っ白になりソースを見...Linuxのサーバのことを独学で勉強したいと思っています。□はてなトップ(C)株式会社はてな。