基于建模的系統(tǒng)工程 (MBSE) 需求分析階段產(chǎn)生需求圖汛骂,用例圖喳资,包圖; 在功能分析與分配階段寂拆,產(chǎn)生 順 序圖姻檀,活 動(dòng)圖以及 狀 態(tài)機(jī)圖摊阀; 在設(shè)計(jì)綜合階段瓦阐,產(chǎn)生 模塊定義圖,...
基于建模的系統(tǒng)工程 (MBSE) 需求分析階段產(chǎn)生需求圖汛骂,用例圖喳资,包圖; 在功能分析與分配階段寂拆,產(chǎn)生 順 序圖姻檀,活 動(dòng)圖以及 狀 態(tài)機(jī)圖摊阀; 在設(shè)計(jì)綜合階段瓦阐,產(chǎn)生 模塊定義圖,...
處理器的指令集可分為 復(fù)雜指令集(CISC ) 與 精簡指令集(RISC) 存儲(chǔ)器的硬件結(jié)構(gòu)可分為 SRAM纤子、 DRAM 搬瑰。。控硼。泽论,主存(內(nèi)存): 用 DRAM 結(jié)構(gòu)。 存儲(chǔ)器...
架構(gòu)設(shè)計(jì)的優(yōu)劣決定了 系統(tǒng)的健壯性 和 生命周期的長短卡乾。 系統(tǒng)架構(gòu)設(shè)計(jì)是連接用戶需求和系統(tǒng)進(jìn)一 步設(shè)計(jì)與實(shí)現(xiàn)的橋梁翼悴。 軟件架構(gòu)模型分類 1,分層架構(gòu) 2幔妨,事件驅(qū)動(dòng)架構(gòu) 3鹦赎,微...
五種數(shù)據(jù)訪問模式 1谍椅,在線訪問 在線訪問模式會(huì)占用一個(gè)數(shù)據(jù)庫連接,讀取數(shù)據(jù)古话,每個(gè)數(shù)據(jù)庫操作都會(huì)通過這個(gè)連接不斷地與后臺(tái)的數(shù)據(jù)源進(jìn)行交互毯辅。 在線訪問方式的優(yōu)點(diǎn): ? 可以處理復(fù)...
信息安全屬性(★★★) 機(jī)密性 / 完整性 / 可用性 / 可控性 / 可審查性 數(shù)據(jù)的完整性:指數(shù)據(jù)是正確的、真實(shí)的煞额、未被篡改的、完整無缺的屬性沾谜。 信息安全的技術(shù)措施主要...
雙重校驗(yàn)鎖 實(shí)現(xiàn)單例: 枚舉 實(shí)現(xiàn)單例: 上面的雙重鎖校驗(yàn)的代碼很臃腫基跑,是因?yàn)榇蟛糠执a都是在保證線程安全婚温。為了在保證線程安全和鎖粒度之間做權(quán)衡,代碼難免會(huì)寫的復(fù)雜些媳否。但是栅螟,...
volatile,它是 Java 中的一個(gè)關(guān)鍵字篱竭,是一種同步機(jī)制力图。當(dāng)某個(gè)變量是共享變量,且這個(gè)變量被 volatile 修飾的掺逼,那么在修改了這個(gè)變量的值之后吃媒,再讀取該變量的值...
下面我們運(yùn)行這段代碼并分析一下可能出現(xiàn)的情況吕喘。 假設(shè)第 1 個(gè)線程赘那,也就是執(zhí)行 change 的線程先運(yùn)行,并且運(yùn)行完畢了氯质,然后第 2 個(gè)線程開始運(yùn)行募舟,那么第 2 個(gè)線程自然...
CAS 其實(shí)是我們面試中的常客闻察,因?yàn)樗窃宇惖牡讓釉砉敖福瑫r(shí)也是樂觀鎖的原理,它的英文全稱是 Compare-And-Swap蜓陌,中文叫做 “比較并交換”觅彰,它是一種思想、一種...
如果你的代碼在單線程下或者在多線程下執(zhí)行都能獲得一樣的結(jié)果钮热,那么你的代碼就是線程安全的填抬。當(dāng)進(jìn)行多線程編程時(shí),我們又會(huì)面臨哪些線程安全的要求呢隧期?又該如何去解決的呢飒责? 有序性 有...
Java 代碼最終是被翻譯成機(jī)器碼執(zhí)行的赘娄,機(jī)器碼才是真正可以和硬件電路交互的代碼。 什么是阻塞式方法宏蛉? 阻塞式方法是指程序會(huì)一直等待遣臼,在該方法完成期間不做任何其他的事情,Se...
為何要使用 Java 線程同步拾并? 當(dāng)多個(gè)線程同時(shí)操作一個(gè)可共享的資源變量時(shí)揍堰,將會(huì)導(dǎo)致數(shù)據(jù)不準(zhǔn)確,相互之間產(chǎn)生沖突嗅义,因此加入同步鎖以避免在該線程沒有完成操作之前屏歹,被其他線程的調(diào)...
進(jìn)程是 操作系統(tǒng) 的管理單位,而線程則是 進(jìn)程 的管理單位之碗;一個(gè)進(jìn)程至少包含一個(gè)執(zhí)行線程蝙眶。不管是在單線程還是多線程中,每個(gè)線程都有一個(gè) 程序計(jì)數(shù)器(記錄要執(zhí)行的下一條指令)褪那,...
在現(xiàn)代操作系統(tǒng)上編寫并發(fā)程序時(shí)幽纷,除了要注意線程安全性(多個(gè)線程互斥訪問臨界資源)以外,還要注意多線程對共享變量的可見性博敬,而后者往往容易被人忽略友浸。 可見性是指當(dāng)一個(gè)線程修改了共...
thread.join 的含義是當(dāng)前線程需要等待 previousThread 線程終止之后才從previousThread.join 返回。簡單來說偏窝,就是上一個(gè)線程還沒有執(zhí)...
你的對象不是線程安全的,你的線程發(fā)生了安全錯(cuò)誤囚枪,線程安全怎么定義的呢派诬? 當(dāng) 多個(gè)線程訪問一個(gè)對象 時(shí),如果不用考慮這些線程在運(yùn)行時(shí)環(huán)境下的 調(diào)度 和 交替執(zhí)行 問題链沼,也不需要...
為什么 wait 必須在 synchronized 保護(hù)的同步代碼中使用? 在使用 wait 方法時(shí)括勺,必須把 wait 方法寫在 synchronized 保護(hù)的 while...
New 表示線程被創(chuàng)建但尚未啟動(dòng)的狀態(tài):當(dāng)我們用 new Thread() 新建一個(gè)線程時(shí),如果線程沒有開始運(yùn)行 start() 方法疾捍,所以也沒有開始執(zhí)行 run() 方法里...
靜態(tài)注冊 靜態(tài)注冊 native 方法的過程奈辰,就是 Java 層聲明的 native 方法和 JNI 函數(shù)是一一對應(yīng)的 那么有沒有方法讓 Java 層的 native 方法和...