服务器启动过程是怎样的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计552个文字,预计阅读时间需要3分钟。
pythonrevert_server 用于在启动过程中,若出现错误分支退出函数时,自动解析,清理server状态。RAII,无需在每个错误分支都做状态清理资源回收等动作。InitializeOnce,这里即是创建InitializeOnce。
revert_server 用于,在启动过程中,在出现错误的分支退出函数时,自动析构,清理server状态。
raii,不需要在每个错误分支都做状态清理资源回收等动作。
InitializeOnce, 这里面就是创建一些放置service的map。
服务参数的设置
然后是校验h2参数,和 如果指定了http_master_service则做一些简单的校验。
然后是 _session_local_data_pool 的构建(如果指定了某个参数的话,默认是空)。
(上面两个也不重要)
_keytable_pool = new bthread_keytable_pool_t;
if (bthread_keytable_pool_init(_keytable_pool) != 0) { ... }
_keytable_pool 是什么,后面可以了解一下。
_tl_options // threadlocal相关参数
(不重要)
如果指定了bthread初始化数量,则...
然后是builtinService的添加。
本文共计552个文字,预计阅读时间需要3分钟。
pythonrevert_server 用于在启动过程中,若出现错误分支退出函数时,自动解析,清理server状态。RAII,无需在每个错误分支都做状态清理资源回收等动作。InitializeOnce,这里即是创建InitializeOnce。
revert_server 用于,在启动过程中,在出现错误的分支退出函数时,自动析构,清理server状态。
raii,不需要在每个错误分支都做状态清理资源回收等动作。
InitializeOnce, 这里面就是创建一些放置service的map。
服务参数的设置
然后是校验h2参数,和 如果指定了http_master_service则做一些简单的校验。
然后是 _session_local_data_pool 的构建(如果指定了某个参数的话,默认是空)。
(上面两个也不重要)
_keytable_pool = new bthread_keytable_pool_t;
if (bthread_keytable_pool_init(_keytable_pool) != 0) { ... }
_keytable_pool 是什么,后面可以了解一下。
_tl_options // threadlocal相关参数
(不重要)
如果指定了bthread初始化数量,则...
然后是builtinService的添加。

