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