Skip to content
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

Document tearing consideration #2

Open
madelson opened this issue Feb 18, 2022 · 0 comments
Open

Document tearing consideration #2

madelson opened this issue Feb 18, 2022 · 0 comments

Comments

@madelson
Copy link
Owner

Because we're a struct without atomic writes, you can corrupt ILL instances by overwriting them on multiple threads.

For the same reason, we can't support Interlocked assignments.

One option would be to make ILL a class instead of a struct, although that means 2 allocations per update instead of just one. Another option would be to carry count in every node which increases space. This could be ameliorated by using "fat" nodes (multiple values per node), but that would have other costs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant