Files
rust/src
bors 4a217759ad Auto merge of #26610 - aturon:fix_make_unique, r=alexcrichton
This commit resolves the race condition in the `get_mut` and
`make_unique` functions, which arose through interaction with weak
pointers. The basic strategy is to "lock" the weak pointer count when
trying to establish uniqueness, by reusing the field as a simple
spinlock. The overhead for normal use of `Arc` is expected to be minimal
-- it will be *none* when only strong pointers are used, and only
requires a move from atomic increment to CAS for usage of weak pointers.

The commit also removes the `unsafe` and deprecated status of these functions.

Closes #24880

r? @alexcrichton 

cc @metajack @SimonSapin @Ms2ger
2015-07-03 01:00:31 +00:00
..
2015-07-01 19:09:14 -07:00
2015-07-01 19:09:14 -07:00
2015-07-01 19:09:14 -07:00
2015-07-01 19:09:14 -07:00
2015-07-01 19:09:14 -07:00
2015-07-01 19:09:14 -07:00
2015-06-17 09:06:59 -07:00
2015-06-16 22:56:42 -07:00