Skip to content

Question about fairness and starvation #6175

Answered by Darksonn
mzimbres asked this question in General
Discussion options

You must be logged in to vote

this means regardless whether to socket is ready for reading the next operation must be rescheduled for execution.

I'm not familiar with Boost.Asio, but from your description it seems like a much more aggressive version of what we're doing. We only force it to yield after 256 successful operations, whereas this sounds like it would happen after every individual operation?

If all DB operations on this connection are now treated as not ready all remaining operations are also slowed down, since now the DB connection is not as fast as it could.

If there are no other tasks on the runtime for execution, then the DB task will be scheduled again immediately. The time it takes to do that is in…

Replies: 1 comment 1 reply

Comment options

You must be logged in to vote
1 reply
@mzimbres
Comment options

Answer selected by hawkw
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
2 participants