原创 提高linux下開發效率的命令行實戰記錄

記錄開發中的一些命令 工程配置文件計入gitignore git status |grep -E “.\w” |awk -F" " ‘{print $1}’ >> .gitignore 查找文件名並過濾內容中關鍵字 find .

原创 使用jsdoc生成源碼註釋文檔

It’s always good to write source code document. As it’s said better written than remember nothing. Recently, I was

原创 git命令實操記錄

git log git log git log -p -1 展開顯示最近一次的提交差異; git log --stat 顯示簡要的函數統計 git log --pretty=oneline git log --

原创 視頻圖像方面的工具記錄

要有好的工具,纔可以提升工作效率。 yuv格式文件查看工具,找到國外一個研究機構開源的pyuv工具

原创 用gdb交叉調試core文件

gdb調試core環境配置 啓動gdb調試bin和core ~/PATH/TO/CROSS/COMPILE/TOOLCHAINS$ ./A_platform-aarch64-gdb BIN_FILE CORE-FILE 提

原创 記一次內存泄露調查

近期一個應用程序出現32k/4~5s的內存持續泄露。 排查思路: 在從業務鏈路上,從上游到下游,梳理數據流通路。 在其數據收發的幾個類的幾個方法上,通過函數重寫,添加hack函數(不做業務處理),分段查看泄露情況。 在pr

原创 GDB遠程交叉調試進程

找到交叉編譯鏈目錄下面的交叉調試 gdb 工具 獲取 sysroot 啓動交叉調試gdb工具,通過 set sysroot,設置上面的sysroot目錄,可以用“:”設置多個sysroot路徑 gdb環境下 (gdb) fil

原创 libuv的簡單理解

libuv是最初爲NodeJS編寫的跨平臺支持庫。 它圍繞事件驅動的異步I/O模型進行設計。該庫提供的不僅僅是在不同的I/O輪詢機制上的簡單抽象:“句柄”和“流”爲套接字和其他實體提供了高級抽象; 還提供了跨平臺文件I/O和線程功

原创 一次QNX上進程死鎖排查

先有利器,纔好幹活 通過pidin加參數 %B,可以看到當前進程的各個線程的STATE,例如:NANOSLEEP, SEM, JOIN,SEND,REPLY, RECEIVE, MUTEX, CONDVAR, 等等。 QNX系統

原创 c/c++中int轉bool判斷

非0即爲真 #include <iostream> using namespace std; int main(int argc, char const *argv[]) { bool _bv = false;

原创 cmakelists實操記錄

cmake 工具要領 主要工具邏輯 查看幫助 cmake --help-command cmake set 定義變量後, 可以跟多個表達式, 來說明變量有多個數據段 set(QC_INCLUDE ${QC_INCLUDE} ${

原创 C語言操作sqlite3數據庫注意SQL語言中字符串的處理

使用C語言往數據庫中插入一個記錄,發現無論如何都無法插入。 數據庫的創建語法 int rc = sqlite3_exec(db, "create table if not exists \ Account_Blob

原创 針對文件操作的linux命令

對比兩個文本文件找出不同行的方法 原文鏈接:https://www.jb51.net/article/58016.htm comm命令法 命令如下:comm -3 a b 注意:如果兩個文件排序不一樣會出問題 grep命令

原创 Android Studio 3.6 Gradle offline mode switch

找了一圈,在這裏找到答案: https://www.jb51.net/article/182416.htm

原创 掉入C語言的泥淖

offsetof #include <stddef.h> size_t offsetof(type, member); The macro offsetof() returns the offset of the field