tomcatの背景のスレッド
-
19-09-2019 - |
質問
いtomcat6.20インスタンスに走りたい送信メールを介して背景のスレッド防止のためメール送信機能からブロックになります。
ができる実行のスレッドの背景を可能にする通常のページのフローが発生します。
申請書ICEfaces.
感謝。
解決
- 作
Executor
を使用java.util.concurrent.Executors.newCachedThreadPool
(またはその他のファクトリメソッド)をコントローラ/サーブレットの初期化方法。 - る請求があったときは、その手はそのままに、ラップ、メール送信を行うための論理
java.lang.Runnable
- 提出
Runnable
のExecutor
これを行なう能力と資格を有する者を送信しみいただけます。記憶を単一のExecutorでスタートアップシェアの全ての請求。な新しい執行毎時間(きだが、やはりゴールドコーストからメルボルン、無駄).
他のヒント
Thread.sleep()
の代わりに送信メールを入れてください。 sendRedirect()
の代わりにあなたの出力を入れます。
public void doUrlRequest(HttpServletRequest request, HttpServletResponse response) {
try {
response.sendRedirect("/home");
} catch (IOException e) {
CustomLogger.info(TAG, "doUrlRequest", "doUrlRequest(): "+e.getMessage());
}
(new Thread() {
public void run() {
try {
Thread.sleep(9000);
System.out.println("Awoken!");
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}).start();
私は道を見出しました。これらのタグ
@PostConstruct()
と
@PreDestroy()
voidを返すサーブレットで2つのメソッドを作成し、パラメータを受け入れません。 直ちに第一の方法と第二のタグ上記第2のタグの上に第1タグを配置します。
タグのエッセンス
実装クラスは、Webサービスのクライアントへの応答を開始する前に@PostConstructメソッドがコンテナによって呼び出されます。
エンドポイントが操作から除去される前に、@PreDestroyメソッドがコンテナによって呼び出されます。
PostConstruction()メソッド内で、Runnableインタフェースを使用してスレッドを作成し、特定のブール変数の値がfalseである場合を除き、それは無限ループ内で実行しています。
falseにブール変数を設定するPreDestroy()メソッドを使用します。
所属していません StackOverflow