string為什么是線程安全的 stringbuffer為什么是線程安全?
stringbuffer為什么是線程安全?方法中有同步機制。在多線程的情況下,只有一個線程可以執(zhí)行到方法中,其他線程需要等待。java中為什么說,String是線程安全的?你好,我是[用戶186292
stringbuffer為什么是線程安全?
方法中有同步機制。在多線程的情況下,只有一個線程可以執(zhí)行到方法中,其他線程需要等待。
java中為什么說,String是線程安全的?
你好,我是[用戶1862923026276]。我很高興為你回答。字符串是不可變的,所以它是線程安全的。1所有不可變類都是線程安全的。線程安全類不一定是不可變的類。例如,StringBuffer是一個變量類,線程安全是通過鎖實現(xiàn)的。2已將Synchronized添加到StringBuffer方法,但StringBuilder沒有。StringBuilder在多線程的情況下會有問題,但是線程安全和線程非安全意味著您的業(yè)務(wù)環(huán)境需要考慮線程安全。多并發(fā)網(wǎng)絡(luò)編程將考慮這些。
在Java語言中,線程是一個特殊的對象,必須由thread類或其子類創(chuàng)建。創(chuàng)建線程通常有兩種方法:一種是使用thread(runnable)的構(gòu)造函數(shù)將實現(xiàn)runnable接口的對象包裝到線程中。其次,從thread類派生一個子類,并重寫run方法。用子類創(chuàng)建的對象是線程。值得注意的是,thread類實現(xiàn)了runnable接口。因此,任何線程都有其run方法,run方法包含線程要運行的代碼。線程的活動由一組方法控制。Java語言支持多線程同時執(zhí)行,并提供多線程之間的同步機制(關(guān)鍵字為synchronized)。比較專業(yè)的理科知識,歡迎關(guān)注我。如果你喜歡我的回答,也請給我表揚或轉(zhuǎn)發(fā),你的鼓勵是支持我寫下來的動力,謝謝。
String是線程安全的嗎?
當(dāng)您看到線程安全時,應(yīng)該有兩件事:沒有共享變量或同步鎖。