国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

消息隊列

2019-11-14 08:58:11
字體:
來源:轉載
供稿:網友

隊列是一種線性表,按照先進先出的原則進行的:PHP實現隊列原理看看各語言實現隊列的方法:各語言實現隊列的方法php實現隊列:第一個元素作為隊頭,最后一個元素作為隊尾

<?php/** * 隊列就是這么簡單 *  * @link http://www.phpddt.com */$array =  array('PHP', 'java'); array_push($array, 'PYTHON'); //入隊列 array_shift($array); //出隊列什么是雙端隊列(或雙向隊列)Deque,全名double-ended queue?即元素可以在隊列的任意一段入隊或出隊,如果我們把這些方法叫做insertLeft()和insertRight(),以及removeLeft()和removeRight()。如果嚴格禁止調用insertLeft()和removeLeft()方法(或禁用右段的操作),雙端隊列功能就和棧一樣。禁止調用insertLeft()和removeRight()(或相反的另一對方法),它的功能就和隊列一樣了。雙端隊列與棧或隊列相比,是一種多用途的數據結構。PHP實現雙端隊列:
<?phpclass Deque  {     public $queue = array();         /**(尾部)入隊  **/     public function addLast($value)      {         return array_push($this->queue,$value);     }     /**(尾部)出隊**/     public function removeLast()      {         return array_pop($this->queue);     }     /**(頭部)入隊**/     public function addFirst($value)      {         return array_unshift($this->queue,$value);     }     /**(頭部)出隊**/     public function removeFirst()      {         return array_shift($this->queue);     }     /**清空隊列**/     public function makeEmpty()      {         unset($this->queue);    }         /**獲取列頭**/    public function getFirst()      {         return reset($this->queue);     }      /** 獲取列尾 **/    public function getLast()      {         return end($this->queue);     }     /** 獲取長度 **/    public function getLength()      {         return count($this->queue);     }    }隊列的用途:隊列可以很好地異步處理數據傳送和存儲,當你頻繁地向數據庫中插入數據、頻繁地向搜索引擎提交數據,就可采取隊列來異步插入。另外,還可以將較慢的處理邏輯、有并發數量限制的處理邏輯,通過消息隊列放在后臺處理,例如FLV視頻轉換、發送手機短信、發送電子郵件等。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 喜德县| 侯马市| 措美县| 澄江县| 和平区| 新干县| 吐鲁番市| 木里| 济宁市| 盘山县| 全州县| 平利县| 桂林市| 独山县| 镇坪县| 东乡县| 义乌市| 定兴县| 南华县| 客服| 武冈市| 南靖县| 兴和县| 喀什市| 天等县| 南和县| 微山县| 建始县| 南漳县| 兰州市| 页游| 四平市| 大丰市| 遂昌县| 昂仁县| 三门峡市| 屏东县| 兰溪市| 玉门市| 绥芬河市| 普陀区|