2015-01-07 25 views
2

我正在讀一本關於JPA和EJB,它有一個網上有說明:序列化方法調用是什麼意思?

「辛格爾頓會話bean可以使用容器管理或bean管理的併發默認是容器管理的,這相當於一個寫。鎖定所有業務方法所有的業務方法調用都被序列化,以便在任何給定的時間只有一個客戶端可以訪問bean同步過程的實際實現是特定於供應商的。

方法調用被序列化是什麼意思,爲什麼只保證一個客戶端可以在任何給定的時間訪問bean?

+1

這裏,「序列化」與調用順序的「順序」同義。 –

回答

5

通過「序列化」他們的意思是「一次完成一個」(所以不要把它與對象序列化混淆)。

每個Singleton會話Bean都有一個與之關聯的鎖,一次可以由一個客戶端使用。所以,如果你使用的是Singleton Session Bean並且有寫入鎖,我不能使用它並且必須等待。一旦你釋放你的鎖,我會(大概)抓住它並能夠使用它,讓其他想使用它的人等到我釋放鎖。

編輯:我發現了一個很好的解釋Singleton Session Bean locks and how/when to use them