![240](https://cdn2.jianshu.io/assets/default_avatar/5-33d2da32c552b8be9a0548c7a4576607.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
TCP異步框架 Golang 編程風(fēng)格 Go語言面向?qū)ο缶幊痰娘L(fēng)格是多用組合宪拥,少用繼承肾胯,以匿名嵌入的方式實(shí)現(xiàn)繼承鲁森。 掌握Go語言,要把握一個(gè)中心...
設(shè)計(jì)思路 在linux下實(shí)現(xiàn)定時(shí)器主要有如下方式 基于鏈表實(shí)現(xiàn)定時(shí)器 基于排序鏈表實(shí)現(xiàn)定時(shí)器 基于最小堆實(shí)現(xiàn)定時(shí)器 基于時(shí)間輪實(shí)現(xiàn)定時(shí)器 在這當(dāng)...
控制并發(fā)有三種種經(jīng)典的方式狡蝶,一種是通過channel通知實(shí)現(xiàn)并發(fā)控制 一種是WaitGroup咸这,另外一種就是Context。 1. 使用最基本通...
在講解InnoDB的MVCC機(jī)制之前拱雏,我們應(yīng)該了解MySQL所支持的事務(wù),以及各個(gè)事務(wù)級別的區(qū)別和每一個(gè)事務(wù)級別所存在的問題棉安。 1. 事務(wù) 事務(wù)...
互斥鎖 互斥鎖用來保證一段時(shí)間內(nèi)只有一個(gè)線程在執(zhí)行一段代碼。 我們先看下面一段代碼铸抑。這是一個(gè)讀/寫程序贡耽,它們公用一個(gè)緩沖區(qū),并且我們假定一個(gè)緩沖...
這是守護(hù)進(jìn)程的啟動的代碼 接下來逐個(gè)分析 每一個(gè)進(jìn)程都有一組資源限制鹊汛,可以通過getrlimit和setrlimit函數(shù)查詢和更改蒲赂。 兩個(gè)函數(shù)返...
計(jì)算機(jī)與網(wǎng)絡(luò)設(shè)備要相互通信,雙方就必須基于相同的方法刁憋。比如滥嘴,如何結(jié)束通信等規(guī)則都需要事先確定。不同的硬件至耻、操作系統(tǒng)之間的通信若皱,所有的這一切都需要...
雖然redis服務(wù)是單線程的服務(wù),單步的redis操作是線程安全的尘颓,但是當(dāng)我們在高并發(fā)的情況下走触,需要一系列的redis邏輯操作,而這些操作需要保...
下列情況socket可讀: socket內(nèi)核接收緩存區(qū)中的字節(jié)數(shù)大于或者等于其低水位標(biāo)記SO_RCVLOWAT疤苹。此時(shí)我們可以無阻塞地讀該sock...