本章描述bufferevent的一些對通常使用不必要的高階特徵。如果只想學習如何使用bufferevent,可以跳過這一章,直接閱讀下一章。
有時候網路程式需要與自身通訊。比如說,通過某些協議對使用者連線進行隧道操作的程式,有時候也需要通過同樣的協議對自身的連線進行隧道操作。當然,可以通過開啟乙個到自身監聽埠的連線,讓程式使用這個連線來達到這種目標。但是,通過網路棧來與自身通訊比較浪費資源。
替代的解決方案是,建立一對成對的bufferevent。這樣,寫入到乙個bufferevent的位元組都被另乙個接收(反過來也是),但是不需要使用套接字。
有時候需要轉換傳遞給某bufferevent的所有資料,這可以通過新增乙個壓縮層,或者將協議包裝到另乙個協議中進行傳輸來實現。
某些程式需要限制單個或者一組bufferevent使用的頻寬。2.0.4-alpha和2.0.5-alpha版本新增了為單個或者一組bufferevent設定速率限制的基本功能。
如果要限制一組bufferevent總的頻寬使用,可以將它們分配到乙個速率限制組中。
有時候需要得知應用到給定bufferevent或者組的速率限制,為此,libevent提供了函式:
對於有複雜需求的程式,可能需要調整
記號儲存器
的當前值。比如說,如果程式
不通過使用bufferevent的方式
產生一些通訊量時
。
高階指標話題
來淺顯地 一下稍微複雜的指標.首先要有乙個不可動搖地認識,再厲害的指標也是指標,它存的內容永遠是位址.定義了指標的型別,該指標就只能與這種型別搭配使用.從二級指標開始說 int i int p i int pp p pp是乙個二級指標,指向指標的指標,存的內容是p的位址,型別是 指向整型的指標的指標...
記憶體高階話題
18.1 new,delete的進一步認識 18.1.1 總述與回顧 記憶體有關的高階用法,如記憶體池等 18.1.2 從new說起 new類物件時,加與不加括號的差別 a pa newa 帶號的寫法,類a的成員變數被初始化為0 a pa2 new a 這種寫法,m i成員變數中是隨機值 但是增加了...
Spring高階話題 Aware
一 aware是什麼?spring aware就是一些定義了spring容器本身功能資源的介面 spring提供的aware介面 介面備註 beannameaware 獲得到容器中bean的名稱 beanfactoryaware 獲得當前 bean factory,這樣可以呼叫容器的服務 messa...