您好,登錄后才能下訂單哦!
本篇內容主要講解“libevent的目錄結構是怎樣的”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“libevent的目錄結構是怎樣的”吧!
編譯方法在該github介紹頁說的很詳細了,這里不再多說。
我們下載下來源代碼以后,看到有很多文件,很多目錄,往往不知道從何入手,我一開始也是這樣,后來我花時間把每個目錄和一些主要的文件內容弄明白后,閱讀源代碼和學習才順手一點。
目錄結構內容如下:
目錄名稱 | 目錄內容 |
---|---|
.deps | 里面存放的plo后綴文件,沒搞懂是什么,可能是編譯生成的一些文件 |
.libs | 存放編譯生成的.o文件和so文件 |
autom4te.cache | 也是編譯或者安裝需要的一些文件,暫時沒搞懂具體有什么作用 |
cmake | 存放cmake文件,配置cmake編譯需要的頭文件和源文件路徑 |
compat | 只有queue.h 定義了很多宏定義,主要用于singly-linked list,list,simple queue,tail queue,circle queue等結構體 |
inlcude | 里面當前目錄頭文件都是之前老版本文件,最新版本使用include/event2里面的頭文件,注意在include/event2里面后綴帶有compat的頭文件都是版本更新后為了向后兼容而存在的,我們這里只研究最新版本,所以會忽略后綴帶有compat的文件 |
m4 | 里面存放m4文件,m4是unix下的一種編程語言,m4文件就是用m4語言寫的,通常是因為configure會依賴它 |
sample | 這個不用說,存放的使用libevent的demo代碼 |
test | 存放單元測試的代碼 |
win32_code | 這個目前不明,待后續更新 |
頭文件內容整理如下:
頭文件 | 聲明內容 |
---|---|
buffer.h | 主要是對evbuffer進行操作,圍繞struct evbuffer進行各種操作 |
bufferevent.h | 針對struct bufferevent 進行各種操作 |
bufferevent_ssl.h | 獲取openssl的struct bufferevent |
dns.h | 針對struct evdns_base結構體進行各種操作 |
event-config.h | 存放很多宏定義,是根據編譯時的配置生成的,下一篇文章中會重點提到 |
event.h | libevent的核心頭文件,針對struct event_base結構體進行操作 |
http.h | 針對struct evhttp進行各種操作 |
listener.h | 針對struct evconnlistener進行操作,socket的綁定和監聽,對套接字操作在這里 |
rpc.h | 針對struct evrpc_base進行操作,可生成rpc服務器和客戶端 |
tag.h | 暫時來看,是用來將evbuffer轉換為具體類型,整形或者字符串或者時間結構體之類的 |
thread.h | libevent支持多線程使用 |
util.h | 防止不支持c99,對很多系統函數進行了封裝,以便于支持c99 |
visibility.h | 定義了一些宏定義,應該是用于動態庫調用方面的參數 |
注意:后綴帶有struct的頭文件里面存放的都是結構體,我們這里就不單獨做介紹了。
另外libevent的實現文件.c文件都在下載下來的源代碼的一級目錄下面,與上面說的目錄是在同一級的
到此,相信大家對“libevent的目錄結構是怎樣的”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。