ap_scoreboard_image->global->thread_limit = thread_limit;
ap_scoreboard_image->global->lb_limit = lb_limit;
在所有的处理结束后判断more_storage指针时候指向了需要初始化空间的末尾,即判断more_storage是否与(char*)shared_score scoreboard_size相等,如果不相等,表明可能出错;
至此,一个完整的记分板已经创建完毕。
6.1.1 .2.2记分板插槽管理
对于记分板而言,其最频繁使用的一个功能就是在记分板中查找指定进程信息,函数find_child_by_pid(apr_proc_t *pid)用以完成该功能。
AP_DECLARE(int) find_child_by_pid(apr_proc_t *pid)
{
int i;
int max_daemons_limit;
ap_mpm_query(AP_MPMQ_MAX_DAEMONS, &max_daemons_limit);
for (i = 0; i < max_daemons_limit; i) {
if (ap_scoreboard_image->parent[i].pid == pid->pid) {
return i;
}
}
return -1;
}
函数只需要一个参数,就是进程的描述数据结构。函数所做的事情无非就是对记分板中的parent数组逐一比较,判断其进程
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




