前言 大家好缺狠,我是小彭。 今天型雳,我們來(lái)討論一個(gè) Square 開源的 I/O 框架 Okio当凡,我們最開始接觸到 Okio 框架還是源于 Square 家的 OkHttp 網(wǎng)絡(luò)...
前言 大家好缺狠,我是小彭。 今天型雳,我們來(lái)討論一個(gè) Square 開源的 I/O 框架 Okio当凡,我們最開始接觸到 Okio 框架還是源于 Square 家的 OkHttp 網(wǎng)絡(luò)...
一致性問(wèn)題不僅在片上,在整個(gè)總線范圍四啰、OS 內(nèi)都是存在的宁玫,cache 之間,cache 和內(nèi)存之間柑晒,chache 和 DMA 之間欧瘪,cache 和 OS 文件之間都存在一致性問(wèn)題,一致性問(wèn)題已經(jīng)很復(fù)雜了匙赞,現(xiàn)在 CPU 總線上專門設(shè)計(jì)有處理 一致性問(wèn)題的 硬件級(jí)別的 IP 核佛掖,并且片內(nèi)總線和系統(tǒng)總線協(xié)議在設(shè)計(jì)時(shí)都必須仔細(xì)考慮一致性的問(wèn)題妖碉,甚至可以說(shuō)總線設(shè)計(jì)一半時(shí)候差不多都是圍繞一致性問(wèn)題展開的
已經(jīng)有 MESI 協(xié)議,為什么還需要 volatile 關(guān)鍵字芥被?前言 大家好欧宜,我是小彭。 在上一篇文章里[https://mp.weixin.qq.com/s/7WNCVvm7cGU9Fy9S3f1IFQ]拴魄,我們聊到了 CPU 的緩存一致...
現(xiàn)代 CPU 為了提高并行度冗茸,會(huì)在增加寫緩沖區(qū) & 失效隊(duì)列將 MESI 協(xié)議的請(qǐng)求異步化,這其實(shí)是一種處理器級(jí)別的指令重排匹中,會(huì)破壞了 CPU Cache 的一致性夏漱。
這句話換個(gè)角度解釋,其實(shí)是因?yàn)?CPU 訪存速度太慢了顶捷,如果串行的等待仿存放回結(jié)果再執(zhí)行下一句挂绰,CPU 會(huì)產(chǎn)生大量的指令空泡,極大的浪費(fèi)了 CPU 時(shí)間服赎,為了提升 CPU 單位時(shí)間內(nèi)的指令吞吐量葵蒂,CPU 使用隊(duì)列緩存了仿存操作
已經(jīng)有 MESI 協(xié)議,為什么還需要 volatile 關(guān)鍵字重虑?前言 大家好践付,我是小彭。 在上一篇文章里[https://mp.weixin.qq.com/s/7WNCVvm7cGU9Fy9S3f1IFQ]缺厉,我們聊到了 CPU 的緩存一致...
這是 MVI 架構(gòu)的第三篇翔脱,系列文章目錄如下: Android 架構(gòu)之 MVI 雛形 | 響應(yīng)式編程 + 單向數(shù)據(jù)流 + 唯一可信數(shù)據(jù)源[https://juejin.cn/...
@KinceeR 十分感謝
Android Studio - Postfix Completion 代碼補(bǔ)全AS 這個(gè)開發(fā)工具有很多技巧的奴拦,今天來(lái)看看 AS 原生提供給我們的代碼補(bǔ)全能力 首先聲明這是 java 版本的,kotlin 不生效 寫法是在對(duì)象后面跟 . + AS 內(nèi)置的...
目錄 效果展示 實(shí)現(xiàn)步驟 1.繼承GLSurfaceView 繼承GLSurfaceView用于展示渲染的畫面届吁,并實(shí)現(xiàn)GLSurfaceView.Renderer接口 2.獲...
一错妖、背景 最近快離職了绿鸣,閑的無(wú)聊,準(zhǔn)備整理下屬于自己的library庫(kù)暂氯,想把自己的庫(kù)放在網(wǎng)上去潮模,用的時(shí)候直接依賴添加。首先想到的就是JitPack痴施,于是網(wǎng)上查看了下資料擎厢,看怎...
在網(wǎng)上找了很多辣吃,沒(méi)有喜歡的方案动遭。也參考了眾多設(shè)計(jì),做了一款自認(rèn)為比較簡(jiǎn)潔齿尽、完美的方案: 大致思路:外層放置scrollview作為容器沽损,容器內(nèi)上部分topView,下部分ta...
@笫丶十三 Glide 或者 Google 自己出的循头,Android 高版本對(duì) Bitmap 已經(jīng)經(jīng)過(guò)優(yōu)化處理了绵估,全部放到本地內(nèi)存中(堆外內(nèi)存),也就是不在進(jìn)程所屬 JVM 虛擬機(jī)內(nèi)存中了
android 圖片加載庫(kù)(4)- Fresco上一篇說(shuō)完 Glide 之后卡骂,我們現(xiàn)在來(lái)說(shuō)下 Fresco国裳,從使用感受上來(lái)看,使用 Fresco 比 Glide 要簡(jiǎn)便不少全跨,但是 Fresco 需要使用單獨(dú)的圖片控件缝左,系統(tǒng)...
最近看到一個(gè)新聞,一個(gè) 1: 1 的自由高達(dá)落戶在上海金橋浓若。 作為高達(dá)愛好者的我一直想去現(xiàn)場(chǎng)感受一下高達(dá)真實(shí)的壓迫感渺杉,無(wú)奈一直沒(méi)機(jī)會(huì)去上海。不過(guò)這難不倒我挪钓,借助 AR 技術(shù)自...
Android 截屏分為四種:View 截屏是越、WebView 截屏、系統(tǒng)截屏 和 adb 截屏 1碌上、View 截屏 View 截圖是將當(dāng)前 View 界面截取下來(lái)倚评,而對(duì)于屏幕...
@42f7649a08c4 哈哈,單詞記錯(cuò)了馏予,見諒啊
Flutter - Weight 入門從 C 開始天梧,我們進(jìn)步到 java,再到 kotlin霞丧,現(xiàn)在又迎來(lái)了 Dart呢岗、Flutter,還要去學(xué)學(xué) python。時(shí)代在進(jìn)步敷燎,我們也得跟著進(jìn)步暂筝,新的思想、新的工具硬贯、新...
圖標(biāo)資源對(duì)應(yīng)的像素 有些時(shí)候不能使用Application的Context饭豹,不然會(huì)報(bào)錯(cuò)(比如啟動(dòng)Activity鸵赖,顯示Dialog等) getParent().request...
在開始之前,我們先來(lái)看看開發(fā)過(guò)程中拄衰,面對(duì)以前寫的代碼常會(huì)碰到的問(wèn)題: 這塊代碼好幾次用到了它褪,應(yīng)該抽出去; 這個(gè)算法可以換個(gè)更高效的寫法翘悉; 這段邏輯繞來(lái)繞去茫打,其實(shí)可以換個(gè)思路。...
哈哈妖混,是我啊
android 多線程 — 線程的面試題和答案這里都是我從各個(gè)地方找來(lái)的資料老赤,鳴謝: [Android面試系列]一句話講清楚Android消息機(jī)制 Java多線程干貨系列—(一)Java多線程基礎(chǔ) JAVA多線程和并發(fā)基...
@雙魚座1990 見諒啊,寫的時(shí)間早制市,好幾年了
kotlin - Coroutine 協(xié)程我是在深入學(xué)習(xí) kotlin 時(shí)第一次看到協(xié)程抬旺,作為傳統(tǒng)線程模型的進(jìn)化版,雖說(shuō)協(xié)程這個(gè)概念幾十年前就有了祥楣,但是協(xié)程只是在近年才開始興起开财,應(yīng)用的語(yǔ)言有:go 、goLand误褪、k...