WebServer icon indicating copy to clipboard operation
WebServer copied to clipboard

是不是应该在定时器,里处理到期事件

Open he3210 opened this issue 2 years ago • 2 comments

你好,大佬 我只发现往小根堆里加定时任务,但是处理到期事件的时候,什么都没做 是应该在 下图中 TODO 位置加上 关闭 http 连接的代码吗?还是我没找到释放 http 连接的位置?

image

he3210 avatar Feb 28 '22 11:02 he3210

你好,这个我也没看到在哪关闭的,不过我测试好像会自己关闭,handleClose执行了,这个定时没搞懂,好像没按照设定的时间来,是调用了一次handleread,不知道为啥会调用

chenming1999 avatar Mar 15 '22 14:03 chenming1999

你好,这个我也没看到在哪关闭的,不过我测试好像会自己关闭,handleClose执行了,这个定时没搞懂,好像没按照设定的时间来,是调用了一次handleread,不知道为啥会调用

TimerNode 从 TimerQueue 里 pop 出来之后,会调用其析构函数,析构函数中调用 HandleClose,从 epoll 里删除事件。最后 HttpData 的 shared_ptr 引用计数变为0,自动调用 HttpData 的析构函数,从而关闭 fd

miku-fan avatar Aug 01 '22 10:08 miku-fan