Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
he3210 opened this issue Feb 28, 2022 · 2 comments
Open

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

he3210 opened this issue Feb 28, 2022 · 2 comments

Comments

@he3210
Copy link

he3210 commented Feb 28, 2022

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

image

@chenming1999
Copy link

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

@miku-fan
Copy link

miku-fan commented Aug 1, 2022

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

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants