摘要:這些是放在進(jìn)程的地址空間上,只有某個特點的線程可以去訪問,其他線程訪問不到。
你能描述一下漸進(jìn)增強和優(yōu)雅降級之間的不同嗎
優(yōu)雅降級:Web站點在所有新式瀏覽器中都能正常工作,如果用戶使用的是老式瀏覽器,則代碼會檢查以確認(rèn)它們是否能正常工作。由于IE獨特的盒模型布局問題,針對不同版本的hack實踐了優(yōu)雅降級,為那些無法支持功能的瀏覽器增加候選方案,使得在舊式瀏覽器上以某種形式降級體驗卻不至于完全失效.
漸進(jìn)增強:從被所有瀏覽器支持的基本功能開始,逐步的添加那些只有新式瀏覽器才支持的功能,向頁面增加無害于基礎(chǔ)瀏覽器額外樣式和功能的。當(dāng)瀏覽器支持時,它們會自動地呈現(xiàn)出來并發(fā)揮作用.
線程與進(jìn)程的理解
1.首先要知道的第一個小問題:
進(jìn)程是什么?
進(jìn)程指的是在系統(tǒng)中運行的一個應(yīng)用程序,程序一旦運行就是進(jìn)程,是資源分配的最小單位
線程是什么?
線程是進(jìn)程的一個執(zhí)行單位,是程序執(zhí)行的最小單位.
2.第二個問題:進(jìn)程與線程的區(qū)別在哪里
區(qū)別一:進(jìn)程擁有獨立的堆??臻g和數(shù)據(jù)段,所以每當(dāng)啟動一個新的進(jìn)程必須分配給它獨立的地址空間,建立眾多的數(shù)據(jù)表來維護(hù)它的代碼段,堆棧段和數(shù)據(jù)段,這對于多進(jìn)程來說十分奢侈,系統(tǒng)開銷很大,而線程不一樣,它不擁有資源,沒有獨立地址空間,但是線程有私有的棧,程序計數(shù)器,本地方法區(qū)。(這些是放在進(jìn)程的地址空間上,只有某個特點的線程可以去訪問,其他線程訪問不到。但若是用c++或c語言,產(chǎn)生數(shù)組越界問題,就可以訪問到其他線程的棧了,導(dǎo)致其他線程的異常),線程比進(jìn)程更節(jié)儉,開銷比較小,切換速度快,但是進(jìn)程的安全性較高,因為有獨立的地址空間,一個進(jìn)程崩潰后,不會對其他進(jìn)程產(chǎn)生影響,而線程死掉就等于整個進(jìn)程死掉
區(qū)別二:在通信機(jī)制上,因為進(jìn)程互不干擾,相互獨立,所以通訊機(jī)制復(fù)雜,例如管道,消息隊列。而線程由于共享數(shù)據(jù)所以通訊機(jī)制很方便
區(qū)別三:同一個進(jìn)程,所有線程共享該進(jìn)程的所有資源.
區(qū)別四:線程必定也只能屬于一個進(jìn)程,而進(jìn)程可以擁有多個線程而且至少擁有一個線程;
3.第三個問題:進(jìn)程與線程的選擇問題
若需頻繁創(chuàng)建銷毀則優(yōu)先使用線程.
若需頻繁切換則優(yōu)先使用線程.
并行操作時使用線程
需要更穩(wěn)定安全時,使用進(jìn)程
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/53622.html
摘要:如果看完本文后,還對進(jìn)程線程傻傻分不清,不清楚瀏覽器多進(jìn)程瀏覽器內(nèi)核多線程單線程運行機(jī)制的區(qū)別。因此準(zhǔn)備梳理這塊知識點,結(jié)合已有的認(rèn)知,基于網(wǎng)上的大量參考資料,從瀏覽器多進(jìn)程到單線程,將引擎的運行機(jī)制系統(tǒng)的梳理一遍。 前言 見解有限,如有描述不當(dāng)之處,請幫忙及時指出,如有錯誤,會及時修正。 ----------超長文+多圖預(yù)警,需要花費不少時間。---------- 如果看完本文后,還...
摘要:這些是放在進(jìn)程的地址空間上,只有某個特點的線程可以去訪問,其他線程訪問不到。 你能描述一下漸進(jìn)增強和優(yōu)雅降級之間的不同嗎 優(yōu)雅降級:Web站點在所有新式瀏覽器中都能正常工作,如果用戶使用的是老式瀏覽器,則代碼會檢查以確認(rèn)它們是否能正常工作。由于IE獨特的盒模型布局問題,針對不同版本的hack實踐了優(yōu)雅降級,為那些無法支持功能的瀏覽器增加候選方案,使得在舊式瀏覽器上以某種形式降級體驗卻不...
摘要:瀏覽器的渲染進(jìn)程是多線程的。因此為了防止渲染出現(xiàn)不可預(yù)期的結(jié)果,瀏覽器設(shè)置渲染線程與引擎為互斥的關(guān)系,當(dāng)引擎執(zhí)行時線程會被掛起,更新則會被保存在一個隊列中等到引擎線程空閑時立即被執(zhí)行。 本篇文章參考自撒網(wǎng)要見魚大佬的 僅供自己學(xué)習(xí)提升。 https://segmentfault.com/a/11... 區(qū)分線程和進(jìn)程 **- 什么是進(jìn)程** 狹義定義:進(jìn)程是正在運行的程序的實例(a...
摘要:瀏覽器渲染進(jìn)程瀏覽器內(nèi)核進(jìn)程,內(nèi)部是多線程的默認(rèn)每個頁面一個進(jìn)程,互不影響。事件觸發(fā)線程歸屬于瀏覽器而不是引擎,用來控制事件循環(huán)可以理解成引擎自己都忙不過來,需要瀏覽器另開線程協(xié)助。 線程和進(jìn)程 進(jìn)程和線程的概念可以這樣理解: 進(jìn)程是一個工廠,工廠有它的獨立資源--工廠之間相互獨立--線程是工廠中的工人,多個工人協(xié)作完成任務(wù)--工廠內(nèi)有一個或多個工人--工人之間共享空間 工廠有多個工人...
閱讀 3866·2023-04-25 17:45
閱讀 3506·2021-09-04 16:40
閱讀 1072·2019-08-30 13:54
閱讀 2199·2019-08-29 12:59
閱讀 1468·2019-08-26 12:11
閱讀 3350·2019-08-23 15:17
閱讀 1576·2019-08-23 12:07
閱讀 3949·2019-08-22 18:00