> On Dec 12, 2015, at 7:04 PM, Chris Lattner <clatt...@apple.com> wrote: > #3 sounds like a great approach to me. I agree with Kevin that if we keep > the object husk approach that any use of a weak pointer that returns nil > should drop any reference to a husk.
Spin locks are, unfortunately, illegal on iOS, which does not guarantee progress in the face of priority inversion. John. > > -Chris > >> On Dec 11, 2015, at 7:00 AM, Mike Ash via swift-dev <swift-dev@swift.org> >> wrote: >> >> 3. Borrow a bit from the weak pointer to implement a spinlock. This is >> really a special case of (2), with the activity count being capped at 1 and >> additional activity blocking. In fact, you could even do a hybrid approach >> by borrowing more bits. (I think it could safely steal up to 20 bits with >> current 64-bit architectures. This may not be wise. As long as targets are >> pointer-aligned you can safely steal 2/3 bits.) _______________________________________________ swift-dev mailing list swift-dev@swift.org https://lists.swift.org/mailman/listinfo/swift-dev