-
Notifications
You must be signed in to change notification settings - Fork 24
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
Make TS::Cache atomic check-then-act methods "recursive-able" #30
Comments
@thedarkone Just wanted to ping you about this issue, now that it’s November. I would really ❤️ to see this feature implemented. |
Had a look at it, turns out it isn't as easy as I imagined, I'm not giving up, but dunno if it reasonably doable. |
😞 What makes it harder than you imagined? |
Long story short, non-MRI versions of Now I have to try to understand what goes wrong and see if it is fixable, but the code is far from trivial (for example this is what internals of Note that however that nested/re-entrant
Now
|
Is there anything left to do here? Is it doable? |
I no longer think this is even remotely possible, CHMv8's design is heavily reliant on update methods having exclusive access to hash's bins (this includes non-reentrability). Besides, I still maintain that even if it is fixable, this would only open unsuspecting users to random deadlocks, therefore the current mode of early failure is even "beneficial". |
WIP (next month?).
The text was updated successfully, but these errors were encountered: