我正在閱讀ThreadLocal類文檔,並想知道它可以在哪些場景下使用。目的和使用ThreadLocal類?
首先我認爲這可以在那些我們有第三方/遺留類場景中使用,我們要處理同步問題。然後我查看了ThreadLocal的其他例子,發現ThreadLocal在那裏不會幫助,因爲在大多數情況下,我們有單個對象,它在所有線程中共享。它是否正確?
有了進一步的理解,現在我可以考慮在那些需要每個線程需要單獨對象的場景中使用ThreadLocal類,並且如果特定線程與ThreadLocal中的對象交互,每次都會使用同一個對象,而不是創造一個新的。
這是正確的還是我錯過了什麼?
感謝Michael..As ......。這裏是我的我的理解,我們通常不保留servlet中的全局變量,因爲它們將在跨線程中可見,這是危險的。所以threadlocal提供了一種方式,其中變量對每個特定的線程都是全局的。對? –
@Mohit:基本上是的。 –