0

thread内部で開始されるサービスを考えてみましょう。Tapestry 5たとえば、そのようなスレッド内のセッションを閉じるなどの一部でこのスレッドを管理しますhibernateか? (たとえば、Sessionサービスからそのような子スレッド内のオブジェクトを渡すことができます。Tapestryスレッドが終了した後、このセッションを安全に閉じますか?)。

4

2 に答える 2

2

Tapestry は、AppModule で宣言されたもののみを管理できます。

単純なルールとして、「new」キーワードを使用すると、タペストリーで管理されません。

タペストリーでランナブルを管理したい場合は、ParallelExecutor を見てください。

タペストリー管理スレッドを模倣したい場合は、ランナブルが終了したら Perthreadmanager.cleanup() を呼び出す必要があります。

于 2013-03-23T01:37:19.810 に答える
0

Hibernate セッションは、現在のリクエストを処理している Web コンテナーのスレッドに接続されます。

独自のスレッドを生成してそのセッションに渡すことにした場合、そのセッションへの変更は、Tapestry がコミットする前、または上記の Web コンテナーのスレッドがその要求の処理を終了する前に行われた場合にのみコミットされます。

休止状態セッションに対する Tapestry の制御は現在のリクエストにバインドされています。リクエストが処理された後、セッションは閉じられます。そのため、セッションを使用するためにリクエストが存続する別のスレッドを生成することはお勧めできません。

于 2013-03-22T15:37:45.277 に答える