閱讀114 返回首頁    go 阿裏雲 go 技術社區[雲棲]


servlet、struts1和struts2的線程安全問題

一、servlet和struts1

通常情況下,係統隻生成servlet的單一實例之後,為每個用戶請求建立新的線程。如果很多請求同時到來,那麼多個線程可能會並發的訪問同一個servlet對象。因此必須小心地同步對字段以及實例變量和其它共享數據的訪問,因為多個線程可能同時對同一數據進行訪問。所以使用實例變量會產生不安全的結果。struts1也是這種單例模式。

servlet和struts1均是單實例、多線程,在不加鎖的情況下盡量不要使用局部變量等帶來線程不安全的變量,隻有請求和局部變量時線程安全的。


二、struts2

struts2本身就是多實例、單線程的,所以可以說本身就是線程安全的。


參考地址:https://blog.csdn.net/zljjava/article/details/7565736

最後更新:2017-04-03 20:19:07

  上一篇:go 基於VHDL的四路搶答器設計(程序)+注釋
  下一篇:go javascript中encodeURI和decodeURI方法