-
-
Notifications
You must be signed in to change notification settings - Fork 17
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
No deterministic ordering of cleanup functions causes race conditions #26
Comments
This isn't a major concern for me since I can add in checks for |
I'll have to think about how to implement a cleanup ordering system, but yeah, I'll get right on that. |
The new version will be here. |
Wow, I forgot about this. I'll get to work on it after work tomorrow. |
No problem, as mentioned earlier, testing for CurrentlyCleaning is sufficient for my use case. If it's of any help, you might find a LinkedHashMap-like struct useful for this |
This would be incredibly useful. Setting a priority value would be an easy solution. |
There's a separate branch that adds this. It's a bit hacky and slow, but it works. It should be under AlreadyJanitor. |
Consider a janitor as such
depending on the ordering of the cleanup, camera type may end up as Scriptable if the reset function was called before the connection was disconnected. The ideal scenario is that it should always end up as Custom.
This cropped up when converting existing usage of Quenty's maid to janitor, which had deterministic ordering of cleanup.
Cleanup should ideally be applied using a queue or stack based approach. Or alternatively with a priority mechanism.
The text was updated successfully, but these errors were encountered: