-
Notifications
You must be signed in to change notification settings - Fork 13.3k
SharedChan is not Freeze #11039
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
Comments
Ok, That was a bit of an overreaction. So far this broke the Font structure which had a SharedChan to send profile data to the profiler task. This turned out to be unused, but I expect I will run into elsewhere too, and it's not so easily removed unless we want to redo the profiler. |
I don't think there's much use for a |
In this case I was trying to use it with RefCell. The other uses of the profiler SharedChan may not be in RefCells and may not run into this. I'm still not done with the port, so I will update if I find more problems. |
Hm, as I think about this, this may be a good thing. |
Apparently it is also not Send. |
I'm going to think of this closed as working-as-intended but instead flag this as needstest for now. All of |
None of these primitives should be Freeze because sharing them in an Arc is a very bad idea. Closes #11039
There was a scheduling race where a child may not increment the global task count before the parent exits, and the parent would then think that there are no more tasks left. Closes #11039
Add `BLESS` for compile-test and some cleanup changelog: none Allows passing the environment variable `BLESS` to bless tests, which is useful when you want to bless internal tests - `BLESS= cargo uitest -Finternal` Also updates a place in the docs referring to `cargo dev bless` and removes some unused test deps
The recent rewrite of std::comm had one major side effect not mentioned in the notes. SharedChan is no longer Freeze. This breaks a lot of code in Servo.
cc @alexcrichton
The text was updated successfully, but these errors were encountered: