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

首頁 > 開發(fā) > 綜合 > 正文

kingate的大概流程

2024-07-21 02:39:24
字體:
供稿:網(wǎng)友

  收到一些網(wǎng)友的來信,要求給kingate寫個開發(fā)文檔,這樣就有個思路,看代碼就方便了。由于我平時懶,寫程序還沒有奍成寫文檔的習慣。所以現(xiàn)在臨時性的寫一些,我想以后來慢慢完善。
  首先程序完成一些初始化操作,很常規(guī)性的東西。比如檢查參數(shù)類的。然后就調(diào)do_config.cpp文件里面的do_config()函數(shù),調(diào)入配置文件,有一個全局的變量conf(是個結(jié)構(gòu),在do_config.h文件里面定義),依據(jù)配置文件的內(nèi)容,設(shè)置conf里面的各個變量,讀配置文件由config類完成(在config.cpp文件里面)。這里面包括讀取過濾配置,過濾系統(tǒng)由filter類完成(在filter.cpp里面),由于過濾系統(tǒng)是動態(tài)的,即一條規(guī)則在什么時間里面有效,檢查時間由cron類完成(借用了crond源代碼)。完成這些初始化操作,主線程就根據(jù)配置文件啟動服務(wù),由main.cpp里面的start()函數(shù)完成。start()函數(shù)的作用就是把這個服務(wù)放入一個單向列表里面。有一個相對的函數(shù)是stop()函數(shù)(也在main.cpp文件里面),把一個服務(wù)從這個列表刪除,這個單向列表的表頭指針是service_head是全局變量。隨后這主線程轉(zhuǎn)入utils.cpp里面server_PRoxy函數(shù),并產(chǎn)生一個輔助線程(time_thread()函數(shù)入口),主線程依據(jù)service_head所指的單向列表進行select動作,假如有用戶連接的話,select就返回,并產(chǎn)生一個線程和用戶交流,新的線程入口函數(shù)是
  server_thread函數(shù),假如是http代理,就轉(zhuǎn)到run_client函數(shù)(在run_client.cpp文件里面),其它的就先建立連接,由各個代理建立連接函數(shù)完成,create_XXX_connection之類的。就轉(zhuǎn)到create_select_pipe函數(shù),完成數(shù)據(jù)代理。輔助函數(shù)的作用就是清除cache中無用的物件,每2秒進行一次。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 湘潭县| 松溪县| 阳东县| 临西县| 子长县| 若尔盖县| 吉安县| 平远县| 云霄县| 新源县| 股票| 长寿区| 丹东市| 南投县| 敖汉旗| 安顺市| 吴桥县| 蕉岭县| 田林县| 大宁县| 道真| 饶河县| 海淀区| 当阳市| 盐城市| 上虞市| 名山县| 二连浩特市| 乌拉特前旗| 仪陇县| 百色市| 清水县| 乌鲁木齐市| 通河县| 会同县| 政和县| 田林县| 旺苍县| 庄河市| 隆子县| 广昌县|