亚洲精品一二区_国产黄色片网站_99久久久成人国产精品_蜜臀网_国产精品一区二区三区免费_成人av中文字幕_91精品国产欧美一区二区成人

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 講師博文 > 安卓開發中使用緩沖機制

安卓開發中使用緩沖機制 時間:2018-09-20      來源:未知

1.1 功能介紹

為了適配網絡傳輸線程和數據處理線程的速度,并且保證所有數據不丟失,使用了緩沖技術。其實質就是建立一個大小合適的哈希表用于存儲數據來模擬隊列先進先出的效果。同時,為了協調讀和寫線程,使用了同步的技術。

1.2 函數介紹

1)向緩沖中增加數據

public synchronized Boolean addBuffer(byte[] data) {

if (data != null) {

if (buffer.size() < volume) {// 確保緩存不會溢出

buffer.put(buffer.size(), data);

return true;

} else {

log.E("%%%%% buffer.size() > volume !!!! %%%%%");

return false;

}

} else {

log.E("%%%%% addBuffer() param is null !!!! %%%%%");

return false;

}

}

紅色標記的synchronized表示同步,即:對于同一段緩沖區,讀和寫操作同一時間只能進行一種,這樣可以保證寫一半的數據被讀取的情況不會出現。

2)從緩沖中讀取數據

public synchronized byte[] getBuffer() {

byte[] data = null;

if (buffer.size() > 0) {

data = buffer.get(buffer.size() - 1);

buffer.remove(buffer.size() - 1);

} else {

log.E("%%%%% readBuffer.size() < 0 !!!! %%%%%");

}

return data;

}

確保只有當緩沖的大小大于0的時候才會讀取數據。

3)向命令緩沖中增加數據

public synchronized Boolean addCmdBuffer(int cmd, int type, int id) {

byte[] cmdd = { (byte) cmd, (byte) type, (byte) id };

if (buffer.size() < volume) {

buffer.put(buffer.size(), cmdd);

return true;

} else {

log.E("%%%%% buffer.size() > volume !!!! %%%%%");

return false;

}

}

增加的命令會被傳遞到主線程,用于實時的處理特殊命令,如:按鈕按下的效果。

{

4)獲得緩存的容量

public synchronized int getVolume() {

return buffer.size();

}

用于獲得緩存的大小,緩存的大小是一個必須要實時監控的數據,溢出有可能造成程序的異常退出。

pthread_exit(0);

上一篇:對Llinux下signal機制的一點認識

下一篇:關于linux下的xinetd服務

熱點文章推薦
華清學員就業榜單
高薪學員經驗分享
熱點新聞推薦
前臺專線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,京ICP備16055225號-5京公海網安備11010802025203號

回到頂部

主站蜘蛛池模板: 91精品亚洲| 在线看片wwwzzz | 漂亮的保姆在线观看 | 欧美精品videossex性护士 | 九九全国免费视频 | 久一在线 | 精品久久洲久久久久护士免费 | 精品久久洲久久久久护士 | 精品午夜寂寞影院在线观看 | 免费高清观看的视频 | 韩国三级bd高清中文字幕合集 | 99re在线视频 | 久久伊人精品热在75 | 秋霞影院18岁特色大片 | 国产一区亚洲 | 高清欧美不卡一区二区三区 | 88国产精品欧美一区二区三区 | 久久伊人精品一区二区三区 | 毛片毛片毛片毛片出来毛片 | 欧美综合视频在线 | 日本成人在线网站 | jizz日本在线 | 人人插人人爽 | 国产在线精品一区二区夜色 | 欧美久久综合九色综合 | 国产欧美日韩综合在线一 | www.日本高清视频 | 免费看av在线网站网址 | 日本高清va不卡视频在线观看 | 亚洲高清视频在线播放 | 久久亚洲一级α片 | 亚洲va中文字幕 | 久久婷婷成人综合色 | 麻豆视频大全 | 久久er热在这里只有精品66 | 欧美巨大xxxx做受孕妇视频 | 蜜桃精品视频在线 | 成品视频观看免费 | 国产免费啪啪 | 蜜桃tv永久网站 | 97人人人|