原创 C++日記——Day56:迭代器的概念和分類

迭代器基本概念 迭代器是一個“可遍歷STL容器全部或者部分元素”的對象(行爲類似於指針對象) 迭代器是用來表現容器中的某一個位置;迭代器依賴於容器,是由容器來提供的,也就是說,一般來講,容器裏邊迭代器。   迭代器的分類 分類依據:迭代

原创 linux用戶棧和內核棧解析

進程是程序的一次執行過程。用劇本和演出來類比,程序相當於劇本,而進程則相當於劇本的一次演出,舞臺、 燈光則相當於進程的運行環境。 進程的堆棧 每個進程都有自己的堆棧,內核在創建一個新的進程時,在創建進程控制塊task_struct的同時,

原创 Linux——expect

expect是一個自動化交互套件,主要應用於執行命令和程序時,系統以交互形式要求輸入指定字符串,實現交互通信。 expect自動交互流程: spawn啓動指定進程---expect獲取指定關鍵字---send向指定程序發送指定字符---執

原创 linux——EOF

在平時的運維工作中,我們經常會碰到這樣一個場景: 執行腳本的時候,需要往一個文件裏自動輸入N行內容。如果是少數的幾行內容,還可以用echo追加方式,但如果是很多行,那麼單純用echo追加的方式就顯得愚蠢之極了! 這個時候,就可以使用EOF

原创 OpenCV簡單知識梳理

一、基本的存儲類型 Mat:矩陣類,用來存儲圖像。 Mat(size, type); //type類型:前兩位表示數據類型,C表示通道數 CV_8UC1 ... CV_32FC2 CV_32FC3 ... Vec:一個主要用於存儲數

原创 C++日記——Day52:嵌入式指針概念、內存池改進版

嵌入式指針 一般應用在內存池相關的代碼中,成功使用嵌入式指針有個前提條件:類A對象的sizeof必須不小於4個字節 工作原理:借用A對象所佔用的內存空間中的前4個字節,用來鏈住這些空閒的內存塊; 但是一旦某一塊內存被分配出去,那麼這個塊的

原创 C++日記——Day55:容器分類,array、vector容器精解

容器分類:(三大類) 1、順序容器:放進去在哪裏元素就排在哪裏。如:arrary、vector、deque、list、forward_list; 2、關聯容器:元素是 鍵/值 對,特別適合做查找。你能控制插入內容,但是一般來講你不能控制插

原创 C++日記——Day47:其他各種mutex互斥量

windows臨界區 Windows臨界區,同一個線程是可以重複進入的,但是進入的次數與離開的次數必須相等。 C++互斥量則不允許同一個線程重複加鎖。   RAII類:(Resource Acquisition is initializa

原创 支持向量機淺析

有一個二維平面,平面上有兩種不同的數據,分別用圈和叉表示。由於這些數據是線性可分的,所以可以用一條直線將這兩類數據分開,這條直線就相當於一個超平面,超平面一邊的數據點所對應的y全是-1 ,另一邊所對應的y全是1。     這個超平面可以

原创 C++日記——Day46:std::atomic續談、std::async深入談

using namespace std; std::atomic<int> g_count = 0; //封裝了一個類型爲int的 對象(值) void mythread1() { for (int i = 0; i < 10000

原创 Jenkins ——The server rejected the connection

啓動agent時,報如下錯誤:   信息: Protocol JNLP4-connect encountered an unexpected exception java.util.concurrent.ExecutionExcepti

原创 linux下sqlite3可視化工具

1.介紹:sqlite3是linux上的小巧的數據庫,一個文件就是一個數據庫。 2.安裝: 要安裝sqlite3,可以在終端提示符後運行下列命令: sudo apt-get install sqlite3 檢查版本 sqlite3 -ve

原创 C++日記——Day44:async、future、packaged_task、promise

std::async、std::future創建後臺任務並返回值 std::async是一個函數模板,用來啓動一個異步任務,啓動起來一個異步任務之後,它返回一個std::future對象,這個對象是個類模板。 什麼叫“啓動一個異步任務”?

原创 C++日記——Day43:condition_variable、wait、notify_one、notify_all

一、條件變量condition_variable、wait、notify_one、notify_all std::condition_variable實際上是一個類,是一個和條件相關的類,說白了就是等待一個條件達成。 std::mute

原创 C++日記——Day35:併發基本概念及實現,進程、線程基本概念

併發、進程、線程的基本概念 併發 兩個或者更多的任務(獨立的事情)同時進行; 一個程序同時執行多個獨立的任務; 以往計算機只有單核cpu,某一時刻只能執行一個任務:有操作系統調度,每秒鐘進行多次所謂的“任務切換”。不是真正的併發,屬於併發