国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 云龙县| 静海县| 阿拉善盟| 安顺市| 页游| 孙吴县| 报价| 驻马店市| 饶河县| 宾阳县| 那坡县| 香港 | 五原县| 镇赉县| 图们市| 米林县| 永昌县| 凤山县| 凌海市| 饶平县| 磴口县| 云和县| 桦南县| 竹山县| 泰州市| 阳谷县| 城市| 龙陵县| 澄城县| 长武县| 江口县| 江阴市| 咸阳市| 平凉市| 房产| 黄石市| 紫金县| 印江| 旅游| 喜德县| 全州县|