之前整理過(guò)一篇C20新特性的文章全網(wǎng)首發(fā)?。20新特性全在這一張圖里了,里面提到過(guò)latch、barrier和semaphore,但是沒(méi)有詳細(xì)介紹過(guò)三者的作用和區(qū)別,這里詳細(xì)介紹下。latch這個(gè)可能大多數(shù)人都有所了解,這就是我們經(jīng)常會(huì)用到的CountDownLatch。用于使...
↓推薦關(guān)注↓轉(zhuǎn)自:量子位?公眾號(hào)(QbitAI)程序bug也能負(fù)負(fù)得正嗎?還真可以。比如程序員們?cè)偈煜げ贿^(guò)的排序算法,通過(guò)兩個(gè)“bug”居然能歪打正著,實(shí)在令人匪夷所思。請(qǐng)看這位程序員寫(xiě)的數(shù)組升序排序代碼:for?i?=?1?to?n?do??for?j?=?1?to?n?do?...
↓推薦關(guān)注↓文章目錄一、QUIC如何解決TCP的隊(duì)頭阻塞問(wèn)題?1.1TCP為何會(huì)有隊(duì)頭阻塞問(wèn)題1.2QUIC如何解決隊(duì)頭阻塞問(wèn)題1.3QUIC沒(méi)有隊(duì)頭阻塞的多路復(fù)用二、QUIC如何優(yōu)化TCP的連接管理機(jī)制?2.1TCP連接的本質(zhì)是什么2.2QUIC如何減少TCP建立連接的開(kāi)銷2....
↓推薦關(guān)注↓1.線程池原理我們使用線程的時(shí)候就去創(chuàng)建一個(gè)線程,這樣實(shí)現(xiàn)起來(lái)非常簡(jiǎn)便,但是就會(huì)有一個(gè)問(wèn)題:如果并發(fā)的線程數(shù)量很多,并且每個(gè)線程都是執(zhí)行一個(gè)時(shí)間很短的任務(wù)就結(jié)束了,這樣頻繁創(chuàng)建線程就會(huì)大大降低系統(tǒng)的效率,因?yàn)轭l繁創(chuàng)建線程和銷毀線程需要時(shí)間。那么有沒(méi)有一種辦法使得線程可...
↓推薦關(guān)注↓大家好,今天給大家分享一篇關(guān)于Cache的硬核的技術(shù)文,基本上關(guān)于Cache的所有知識(shí)點(diǎn)都可以在這篇文章里看到。關(guān)于Cache這方面內(nèi)容圖比較多,不想自己畫(huà)了,所以圖都來(lái)自《ComputerArchitecture:AQuantitativeApproach》。這是一...
緣起近期排查了一個(gè)問(wèn)題,epoll驚群的問(wèn)題,起初我并不認(rèn)為這是驚群導(dǎo)致,因?yàn)閺默F(xiàn)象上看,只是體現(xiàn)了CPU不均衡。一共fork了20個(gè)Server進(jìn)程,在請(qǐng)求負(fù)載中等的時(shí)候,有三四個(gè)Server進(jìn)程呈現(xiàn)出比較高的CPU利用率,其余的Server進(jìn)程的CPU利用率都是非常低。中斷,...
〇、本文寫(xiě)作背景大約2年前,在騰訊內(nèi)網(wǎng),筆者和很多同事討論了GPU虛擬化的現(xiàn)狀和問(wèn)題。從那以后,出現(xiàn)了一些新的研究方向,并且,有些業(yè)界變化,可能會(huì)徹底顛覆掉原來(lái)的一些論斷。但這里并不是要重新介紹完整的GPU虛擬化的方案譜系。而是,我們將聚焦在英偉達(dá)GPUCUDA計(jì)算領(lǐng)域,介紹下我...
眾所周知,C并不是一種流行的Web開(kāi)發(fā)語(yǔ)言,究其原因有很多:語(yǔ)言門檻高、使用難度大、開(kāi)發(fā)效率低......話雖如此,但隨著Emscripten的成熟,未來(lái)C在Web方面會(huì)發(fā)揮更大的潛能,尤其是游戲、3D應(yīng)用等方面。有關(guān)CWeb相關(guān)的框架有不少,下面進(jìn)行了簡(jiǎn)單的整理,并按照“Sta...
說(shuō)起Web開(kāi)發(fā),大多數(shù)人會(huì)想到Java、Python、Golang...?因?yàn)樗鼈兊闹髁鱓eb框架有很多,Java有非常知名的Spring全家桶,Python有大而全的Django、小而精的Flask、高性能的Tornado,Golang也有快速靈活的Gin、Echo等框架。相比...
當(dāng)我每了解一個(gè)新技術(shù)或者新框架的時(shí)候,我都想要先把名字概念弄懂是什么,可見(jiàn)概念對(duì)于我們的幫助非常大。計(jì)算機(jī)網(wǎng)絡(luò)中的概念也是非常龐雜,理解起來(lái)比較困難,所以這里,我給大家匯總了計(jì)算機(jī)網(wǎng)絡(luò)中89個(gè)常見(jiàn)的概念,希望對(duì)你有所幫助。主機(jī):計(jì)算機(jī)網(wǎng)絡(luò)上任何一種能夠連接網(wǎng)絡(luò)的設(shè)備都被稱為主機(jī)或...
↓推薦關(guān)注↓std::set/std::map(以下用std::map代表)是常用的關(guān)聯(lián)式容器,也是ADT(抽象數(shù)據(jù)類型)。也就是說(shuō),其接口(不是OO意義下的interface)不僅規(guī)定了操作的功能,還規(guī)定了操作的復(fù)雜度(代價(jià)/cost)。例如set::insert(iterat...
一、前言這篇文章來(lái)聊聊大名鼎鼎的GDB,它的豪門背景咱就不提了,和它的兄弟GCC一樣是含著金鑰匙出生的,在GNU的家族中的地位不可撼動(dòng)。相信每位嵌入式開(kāi)發(fā)工程師都使用過(guò)gdb來(lái)調(diào)試程序,如果你說(shuō)沒(méi)有用過(guò),那只能說(shuō)明你的開(kāi)發(fā)經(jīng)歷還不夠坎坷,還需要繼續(xù)被BUG吊打。我們都知道,在使用...
本文的目的是通過(guò)隨機(jī)截取的一段網(wǎng)絡(luò)數(shù)據(jù)包,然后根據(jù)協(xié)議類型來(lái)解析出這段內(nèi)存。學(xué)習(xí)本文需要掌握的基礎(chǔ)知識(shí):網(wǎng)絡(luò)協(xié)議C語(yǔ)言Linux操作抓包工具的使用其中抓包工具的安裝和使用見(jiàn)下文:《一文包你學(xué)會(huì)網(wǎng)絡(luò)數(shù)據(jù)抓包》一、截取一個(gè)網(wǎng)絡(luò)數(shù)據(jù)包通過(guò)抓包工具,隨機(jī)抓取一個(gè)tcp數(shù)據(jù)包科萊抓包工具解...
在我們?nèi)粘9ぷ髦?,為了?yàn)證開(kāi)發(fā)的功能,比如:文件上傳功能或者算法的處理效率等,經(jīng)常需要一些大文件進(jìn)行測(cè)試,有時(shí)在四處找了一頓之后,發(fā)現(xiàn)竟然沒(méi)有一個(gè)合適的,雖然Linux中也有一些命令比如:vim、touch等可以創(chuàng)建文件,但是如果需要一個(gè)100G或者1T的大文件,這些命令就顯得力...
↓推薦關(guān)注↓程序員的圈子啊那是十分神秘,又令人著迷的。每天的工作就是對(duì)著電腦,那他們的工作是如何的呢?我們來(lái)品一品(PS:后面奉上各位大佬的桌面,別走開(kāi)哦)↓↓↓最最常見(jiàn)的普通版:升級(jí)版:算不得體貼版:逼退人升級(jí)版:舒適版:超人性版:獨(dú)立版:高級(jí)版:友誼版:高級(jí)程序員版:干凈的其...
289117336
Tronlong創(chuàng)龍
13030203448
大有可為
MXX1597759
xingnan123
xiaoguaixh
Y0825
LorenandGabriel
ilovenaibao
bluesky0318
liqinglong1023