lighttpd read 1

 

 

// 启动worker
while ()// 主进程、不停止
{
	if ()// 需要创建新进程
	{}
	else// 不需要创建新进程
	{
		if ()// wait成功
		{}
		else// wait失败
		{}
	}
}

每个worker的工作:

fdevent_init:根据type对poll或select或epoll进行初始化。包括设置poll、add、del、reset等函数。

fdevent: fdevent_register、fdevent_event_add(注册包括fdevent_handler,FAM是stat_cache_handle_fdevent)
(途中如果出问题,则fdevent_event_del、fdevent_unregister)

在main_loop中fdevent_poll(LINE:1391)
if ()// fdevent_poll成功,有事件
{
	do {}// 使用fdevent_handler处理事件
	while();// 遍历所有事件
}
// 失败

 

 

你可能感兴趣的:(工作,cache,lighttpd)