第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在單線程環(huán)境中使用像 Hashtable 這樣的線程安全集合類有什么缺點(diǎn)嗎?

在單線程環(huán)境中使用像 Hashtable 這樣的線程安全集合類有什么缺點(diǎn)嗎?

一只甜甜圈 2022-10-20 17:32:54
面試官問我在單線程環(huán)境中使用像 Hashtable 這樣的線程安全類的缺點(diǎn)?有什么缺點(diǎn)嗎?如果不是那么為什么后面會引入非線程安全類?
查看完整描述

2 回答

?
胡子哥哥

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超6個贊

面試官問我在單線程環(huán)境中使用像 Hashtable 這樣的線程安全類的缺點(diǎn)?

盡管大多數(shù)缺點(diǎn)都與性能有關(guān),但還是有的。即使是單線程環(huán)境中也有多個線程(想想 GC、終結(jié)器、信號處理程序、JMX 等),因此該語言仍然需要遵守同步結(jié)構(gòu),例如synchronized,volatile和本機(jī)鎖實(shí)現(xiàn)。這些語言特性會刷新或使內(nèi)存緩存無效并影響代碼重新排序,這兩者都會顯著影響整體運(yùn)行時性能。

如果不是那么為什么后面會引入非線程安全類?

在單線程或多線程應(yīng)用程序中,非線程安全對象的性能總是比線程安全對象好。處理本地 CPU 緩存內(nèi)存的能力是現(xiàn)代硬件提供的主要速度提升之一。如果您不必接觸主內(nèi)存總線,則可以更快地執(zhí)行操作數(shù)個數(shù)量級。同步結(jié)構(gòu)降低了使用高速緩存的能力。

最后,線程安全類通常在所涉及的數(shù)據(jù)結(jié)構(gòu)以及它們在多線程應(yīng)用程序中正確運(yùn)行所需的邏輯方面都更加復(fù)雜。這意味著即使我們忽略同步結(jié)構(gòu),它也可能使用更多內(nèi)存并且運(yùn)行速度更慢,盡管這種情況的程度很大程度上取決于所討論的特定類


查看完整回答
反對 回復(fù) 2022-10-20
?
蠱毒傳說

TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超3個贊

  1. 它們在單線程環(huán)境中速度較慢?,F(xiàn)代 JIT 在單線程環(huán)境中使用同步類非常有效,但并不完美。

  2. 它們在多線程環(huán)境中要慢得多。如果您有不可變的集合,您可以安全地從不同的線程使用,但同步集合的工作速度會慢得多。

  3. [設(shè)計] 它的鎖定語義大多是無用的,所以無論如何都需要額外的同步。你很少只需要讀或?qū)?,大多?shù)時候你先讀然后寫,你希望它是原子的?;蛘吣朐试S多個同時讀取。


查看完整回答
反對 回復(fù) 2022-10-20
  • 2 回答
  • 0 關(guān)注
  • 130 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號