about summary refs log tree commit diff
path: root/src/libstd/sys
diff options
context:
space:
mode:
authorAaron Turon <aturon@mozilla.com>2015-04-13 12:08:20 -0700
committerAaron Turon <aturon@mozilla.com>2015-04-13 12:15:28 -0700
commit6399bb425b3a82111cd554737f194c95b8f6bad5 (patch)
treef1799d53b1c70ba745ac6c0d82da3fe6d2b26b23 /src/libstd/sys
parent588d37c653ddac491c2c1cb8974f56781533b173 (diff)
downloadrust-6399bb425b3a82111cd554737f194c95b8f6bad5.tar.gz
rust-6399bb425b3a82111cd554737f194c95b8f6bad5.zip
De-stabilize `thread::scoped` and friends
Issue #24292 demonstrates that the `scoped` API as currently offered can
be memory-unsafe: the `JoinGuard` can be moved into a context that will
fail to execute destructors prior to the stack frame being popped (for
example, by creating an `Rc` cycle).

This commit reverts the APIs to `unstable` status while a long-term
solution is worked out.

(There are several possible ways to address this issue; it's not a
fundamental problem with the `scoped` idea, but rather an indication
that Rust doesn't currently provide a good way to ensure that
destructors are run within a particular stack frame.)

[breaking-change]
Diffstat (limited to 'src/libstd/sys')
0 files changed, 0 insertions, 0 deletions