check sqe tags before reaping
Change the mechanisms how EMPER achieves the invariant that only the OWNER of an IoContext is allowed to reap new work notifications from it. Previously we used the state of the PipeSleepStrategy which proved complex and error prone. Now we always check if the completions we are about to reap contain any new work notifications and if so return early without reaping those. Now the behavior of reap locked equals the lock-less variants.
Showing
- emper/io/IoContext.cpp 17 additions, 50 deletionsemper/io/IoContext.cpp
- emper/io/IoContext.hpp 0 additions, 7 deletionsemper/io/IoContext.hpp
- emper/sleep_strategy/PipeSleepStrategy.cpp 0 additions, 50 deletionsemper/sleep_strategy/PipeSleepStrategy.cpp
- emper/sleep_strategy/PipeSleepStrategy.hpp 1 addition, 13 deletionsemper/sleep_strategy/PipeSleepStrategy.hpp
Loading
Please register or sign in to comment