You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The timer logic we have in src/core/timer.c could probably go away now. The main timeouts we have are using aios and their builtin timers, and it seems that the timer.c code is now duplicate; it also forces yet another thread to be created.
The text was updated successfully, but these errors were encountered:
Just a note here, the structure of aios and cancellation of them seems to be somewhat rough, in that cancellation of the aio may cost quite a bit, whereas with timers we can simply deschedule the timer. The REQ protocol makes use of this to reduce the cost of what would otherwise be a fairly frequent code path.
One thing we might look at doing is scheduling a receive from the REQ, even before the client has issued it, and then having that timeout. That would allow us to use the same AIO for both purposes.
The timer logic we have in src/core/timer.c could probably go away now. The main timeouts we have are using aios and their builtin timers, and it seems that the timer.c code is now duplicate; it also forces yet another thread to be created.
The text was updated successfully, but these errors were encountered: