環形緩衝區

2021-09-25 04:18:12 字數 577 閱讀 6620

#define print_buf_size   (16*1024)

static

char

*g_pcnetprintbuf;

//環形緩衝區的首位址

static

int g_ireadpos =0;

//環形緩衝區讀的位置

static

int g_iwritepos =0;

//環形緩衝區寫的位置

intinit()

}//判斷環形緩衝區是否滿了

static

intisfull

(void

)//判斷環形緩衝區是否空

static

intisempty

(void

)//往環形緩衝區中存資料,乙個字元乙個字元的來

static

intputdata

(char cval)

}//從環形緩衝區獲得資料

static

intgetdata

(char

*pcval)

}

環形緩衝區

include include include include include define buffsize 1024 1024 define min x,y x y x y pthread mutex t lock pthread mutex initializer struct cycle b...

環形緩衝區

環形緩衝區要維護兩個索引,分別對應寫入端 w 和讀取端 r 寫入 push 的時候,先確保環沒滿,然後把資料複製到 w 所對應的元素,最後 w 指向下乙個元素 讀取 pop 的時候,先確保環沒空,然後返回 r 對應的元素,最後 r 指向下乙個元素。上述的操作並不複雜,不過有乙個小小的麻煩 空環和滿環...

環形緩衝區

環形緩衝區 環形緩衝區的定義 訊息佇列的資料結構有很多,但是使用陣列更加高效 基本結構 緩衝區包含以下的元素 讀寫的指標 儲存的資料型別 緩衝區是否滿的標誌和多執行緒訪問的鎖 上述展示了直觀的儲存方式,r代表是讀指標,w代表寫指標,至於資料的讀取如何實現可按照前述 關於緩衝區是否滿的標誌問題 當r ...