Home   Single Page

サーブレットスレッドを使用してイベントを処理

デフォルトでは、ZKはイベントプロセススレッドと呼ばれる独立したスレッドでイベントを処理します。このため、開発者はサーブレッドスレッドがレスポンスをブラウザへ送信することをやめることなく、いつでも中断と再開を行うことができます。

しかし、中断したスレッドがたくさんある場合はメモリをたくさん使います。この場合、サーブレットスレッドのローカル記憶装置で情報を記憶するほかのシステムとの統合は難しくなります。

ZKではイベントプロセススレッドを使用不可にすることができます。つまり、ほかの従来のフレームワークのようにサーブレットスレッドの中でZKにすべてのイベントを処理させられます。サーブレットスレッドを使用する場合、実行を一時中断することができません。

イベントプロセススレッドの使用を不可にするのに、WEB-INF/zk.xml中の以下のコンテンツを指定しなければなりません。

<system-config>
    <disable-event-thread/>    
</system-config>

サーブレットを使用してイベントを処理する制限と利点はここにあります。
以下のセクション中で、サーブレットスレッドを使用するときの制限とその回避対策について話します。

サーブレットスレッドを使用

イベントプロセススレッドを使用

他の技術との統合

統合しやすい

多くのコンテナーはHTTPリクエストがサーブレットスレッドで処理されることを想定します。

統合するのに、EventThreadInit と/またはEventThreadCleanupを実装しなければならないかもしれません。

ZKとそのコミュニティは統合を簡単にするように努力しています。

中断と再開

イベントリスナの実行を中断する方法はありません。

例えば、モーダルウィンドウを作成できません。

まったく制限はありません。