-
Notifications
You must be signed in to change notification settings - Fork 161
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
Enhanced list indexing does not work in the background thread #215
Comments
That solution (making it an atomic list) seems appropriate. It is used only by adding entries and tested only in that one debugging warning. Even if there was a race condition between two threads it would simply result in a missed warning. On the other hand, the new listindex.tst does something that no other test file does, as far as I know, |
Yes - now it trips over |
Shared seems appropriate. CATS_AND_REPS and FILTERS which do a similar job in type.g is already shared. There might be a case for having a single OPERATIONS_REGION and putting OPERATIONS and WRAPPER_OPERATIONS and anything else of a similar nature in it. Access is only while installing operations or methods, not while calling them, so there should be no performance cost once everything is loaded. There are also places where two or more operations are added at once (eg attribute setters, getters and testers) and such things should probably be atomic. |
Fixed by PR #221. |
This is a follow-up of PR #209 (see some comments at that PR). The new test
listindex.tst
added in PR #192 by @stevelinton works only in the main execution thread. Otherwise, there is no access toWRAPPER_OPERATIONS
. Perhaps the solution is to make the latter an atomic list.The text was updated successfully, but these errors were encountered: