色色一区二区三区,一本大道道久久九九AV综合,国产香蕉97碰碰视频va碰碰看,综合亚洲国产2020

    <legend id="mljv4"><u id="mljv4"><blockquote id="mljv4"></blockquote></u></legend>

    <sub id="mljv4"><ol id="mljv4"><abbr id="mljv4"></abbr></ol></sub>
      <mark id="mljv4"></mark>
      人文藝術(shù) > 如果實(shí)現(xiàn)了一種不用暫停世界的GC算法,會(huì)對現(xiàn)在編程語言產(chǎn)生什么影響?

      如果實(shí)現(xiàn)了一種不用暫停世界的GC算法,會(huì)對現(xiàn)在編程語言產(chǎn)生什么影響?

      2020-10-14 07:04閱讀(65)

      如果實(shí)現(xiàn)了一種不用暫停世界的GC算法,會(huì)對現(xiàn)在編程語言產(chǎn)生什么影響?:Java和golang的最新的gc處理耗時(shí)已經(jīng)極低了,又想有g(shù)c,又不想暫停世界,可能比較困難。

      1

      Java和golang的最新的gc處理耗時(shí)已經(jīng)極低了,又想有g(shù)c,又不想暫停世界,可能比較困難。

      如果想智能回收內(nèi)存,可以選擇rust,思路是所有權(quán)機(jī)制。

      所謂所有權(quán)機(jī)制,就是任何內(nèi)存都是有主的,由主人自己在銷毀的時(shí)候來釋放,別人想使用不屬于自己的內(nèi)存,需要通過借用來實(shí)現(xiàn),借出去的東西必須還回來。

      然后在編譯階段保證所有權(quán)機(jī)制的安全,不允許出現(xiàn)有借無還的情況。

      這是一種新的語言,新的編程思想,你可以研究一下。


      2

      從某種意義上來說,即使不gc,世界也是無時(shí)無刻都在暫停,因?yàn)樾阅懿皇菬o限的,執(zhí)行每一個(gè)操作都需要時(shí)間,等待操作完成和暫停世界沒有本質(zhì)區(qū)別,如果可以讓gc的時(shí)間足夠短,那gc的時(shí)間就可以忽略了

      現(xiàn)在ibm已經(jīng)有g(shù)c時(shí)間非常非常非常短的算法了,主要缺點(diǎn)是費(fèi)內(nèi)存

      3

      理論來說不停頓就會(huì)影響程序本身的吞吐量,因?yàn)槿绻鹓c線程全階段和應(yīng)用程序線程并發(fā)的話就會(huì)搶占CPU資源。

      其實(shí)個(gè)人認(rèn)為是可以做到的,但有沒有必要就視情況而定了。譬如zgc本身停頓時(shí)間一般就在十到幾十毫秒左右,如果gc roots不是特別多的話,其實(shí)這時(shí)間已經(jīng)算非常短了,也基本能滿足比較苛刻的需求了。

      其實(shí)你可以換個(gè)角度想,如果全程并發(fā)gc其實(shí)回收效率并不會(huì)有stw高,而垃圾回收率不該就意味著簡介地增加了gc的次數(shù),所以我個(gè)人認(rèn)為適當(dāng)?shù)膕tw還是有一定需要的,因此即使研發(fā)出了感覺也不會(huì)有多大改變,因?yàn)檎{(diào)優(yōu)本身都是等價(jià)交換的思想,即得到了并發(fā)就降低吞吐量。

      除非硬件以后發(fā)展到非常強(qiáng)大(或遠(yuǎn)超應(yīng)用程序所需的資源)否則不可能改變這現(xiàn)象。因?yàn)檐浖狡款i后還是得看硬件性能

      4

      那就用蘋果的arc,就是開發(fā)者長點(diǎn)心

      5

      即使實(shí)現(xiàn)了,也毫無意義。 原因,在多線程中,或云計(jì)算的虛擬CPU的核 都有權(quán)限掛起一段程序的某個(gè)線程,再以后的時(shí)間片再切換回來。 這是現(xiàn)代處理器多任務(wù)的本質(zhì)特點(diǎn),無法避免。只有少數(shù)實(shí)時(shí)處理程序能夠幸免,比如聲音和圖像的實(shí)時(shí)編輯軟件。你沒有辦法避免世界停下來,甚至軟件本身都不容易察覺自己的時(shí)間片被掛起。

      6

      暫停是因?yàn)樾枰獌鼋Y(jié)當(dāng)前的內(nèi)存狀態(tài),來判斷哪些內(nèi)存是可以gc的…一直處于動(dòng)態(tài)的內(nèi)存分配狀態(tài)下,gc是難以實(shí)現(xiàn)的…只能盡可能降低這個(gè)時(shí)間,但不能完全消滅…你gc算法執(zhí)行需要時(shí)間,只要要保障這段時(shí)間內(nèi)內(nèi)存不能變動(dòng)。

      7

      那得等量子計(jì)算機(jī)了吧大概,F(xiàn)有架構(gòu)的計(jì)算機(jī)無論如何也是會(huì)暫停世界的,不管你用什么GC算法,cpu處理本質(zhì)就是中斷……中斷……中斷……

      8

      從內(nèi)存角度來看,永遠(yuǎn)不可能。除非自己回收管理。內(nèi)存交給系統(tǒng)管理,他必須將現(xiàn)有線程工作內(nèi)容搬遷到新的地方去。假設(shè)內(nèi)存無限大,系統(tǒng)線程隨著在空閑內(nèi)存上復(fù)制一模一樣的數(shù)據(jù)和大小,那么GC暫停將會(huì)在一瞬間完成遷移。不過意義就是空間和拷貝的浪費(fèi)。

      熱點(diǎn)關(guān)注

      華裔女賭王就此沒落,生前讓所有 濃情端午粽飄香,青浦邀你“云體 上海:“云端”展現(xiàn)端午節(jié)文化內(nèi) “甜咸大戰(zhàn)”!明星藝人們喜歡什 如何做一個(gè)男人喜歡的情人(如何 當(dāng)你和你同時(shí)出現(xiàn)在同一個(gè)場景中 如何在昏暗的光線下設(shè)置快門速度 教育在生活中的價(jià)值是什么? 世上做壞事的人死后會(huì)面臨什么因 拜登就任總統(tǒng)后的第一步是什么? 同意/不同意:人生最重要的目標(biāo) 二戰(zhàn)后,德國在調(diào)和分歧方面做得 亞伯·林肯恨白人嗎? 一個(gè)編輯能把你的故事毀得有多嚴(yán) 現(xiàn)在的iPhone6還能堅(jiān)持再用一年 曹操為什么不殺司馬懿? 現(xiàn)在買房是不是最便宜的時(shí)候,現(xiàn) 我身邊的農(nóng)業(yè)銀行營業(yè)廳關(guān)了,AT 歐洲媒體評(píng)選CBA最有實(shí)力球員, 榮耀play的6+128和榮耀8X的6+128 螞蟻集團(tuán)是科技公司還是金融公司 請問機(jī)友華為mate30P與華為mate3 聽說老詹修剪一次指甲需要5小時(shí) 為什么說寶寶“一月睡二月哭三月 戴笠人稱戴老板,這個(gè)是怎么叫出 沒有工作能一次性補(bǔ)繳社保么? 我想知道定向師范生和免費(fèi)師范生 肺癌引起的咳嗽是怎樣的呢? 5000mAh電池的5G手機(jī)推薦嗎?要 恒大亞冠表現(xiàn)“差強(qiáng)人意”,你覺