
思考一個系統,在系統不斷構建的過程中,系統需要支持多個不同版本的代碼 這時,設計模式的工廠模式不禁就蹦出在腦海中,來解決不同版本的代碼。 然而在...
哈希是一種key value的存儲結構 當哈希表的key越來越多的時候,則避免不了要rehashing來保證新的key能插進來或者來達到更高的性...
對于先進先出的內存分配場景分配內存的策略可以簡單很多例如消息隊列的內存分配問題 思考消息隊列中的元素內存大小差異巨大無法預先分配確定的內存塊來傳...
背景 例如分配一片內存,一般是順序申請,亂序回收 如果是跨線程的話,一般需要引入鎖來解決并發訪問的問題 然而鎖的使用,極大的限制住了最高的訪問并...
一般來說server單機,實現30w qps算很高了, 但是受摩爾定律的限制,單核的性能已經發揮到了極致,市場上,也出現了大量多核的服務器 那么...
當程序在操作文件,網絡傳輸時,都會發生系統調用 系統調用會讓線程切換用戶態和內核態,并且當系統調用長時間沒返回,會導致線程阻塞,并無法處理其他事...
使用方法 創建一個擁有五個線程的線程池 提交一個任務到線程池執行 取消線程池中的所有任務 具體實現
設計原理 初始化 建立2048個元素的數組,用于傳輸數據 為每個元素分配一個版本號:turn turn為奇數是,為可讀 turn為偶數時,為可寫...
CPU Cache有L1/L2/L3 cache,它們是為了減緩CPU高速與Ram低速之間的數據運輸成本的buffer speed L1: 4 ...