原创 shared_ptr 創建時即捕獲析構動作,何解?

讀陳碩書《Linux多線程服務端編程》,有一句話不能理解:析構在創建時被捕獲,這意味着虛析構不再是必須的。實際代碼操作了一下,發現確實通過shared_ptr去釋放派生類對象,無需將析構函數置爲virtual,代碼如下: #inc

原创 【MySQL】【性能】大字段造成的統計卡頓

  創建三張表格,test,test1,test2,每張表插入十萬行數據,這三張表的schema都如圖1所示,不同的是每張表的des字段的長度不同(但同一張表格內,每一行des字段的長度都是相同的),如圖2所示。 圖1、sch

原创 【MySQL】鎖與隔離級別

文章目錄一、前言二、表鎖三、MDL鎖四、行鎖(一) 索引與鎖五、gap鎖^[1]^六、next-key lock七、如何選擇隔離級別Ref 一、前言 快照讀的幻讀通過 mvcc 解決 當前讀的幻讀通過 next-key鎖 解決

原创 【MySQL】寫一行數據時,MySQL內部發生了什麼

文章目錄一、主要流程二、日誌系統(一) redolog(二) binlog(三) 兩階段提交與crash_safe(四) undolog三、減少隨機IO^[1]^(一) 減少隨機寫IO之redolog(二) 減少隨機讀IO之Cha

原创 Manacher's Algorithm——搜索最長迴文串

Manacher's Algorithm——搜索最長迴文串 最近刷leetcode刷到一個尋找最長迴文串的題,想了很久都沒想出能夠將算法複雜度降低至O(n2)以下的方法,只能上網搜求答案:Manacher’s Algorithm

原创 vs2015:/utf-8選項解決UTF-8 without BOM 源碼中文輸出亂碼問題

轉載自:https://blog.csdn.net/10km/article/details/80203286 本來我已經參考網上關於C++中文輸出亂碼的文章解決了,如下面的代碼輸出前調用wcout.imbue設置locale,就可以

原创 APUE學習筆記:Linux下signal和sigaction的使用區別

《UNIX環境高級編程》第三版,圖10-20在Linux環境下的運行結果與書中所述有所不同,信號處理函數執行期間未自動屏蔽該信號,詳見: 信號之sigsetjmp和siglongjmp函數 其原因在於: glibc 2之後,如果系統定