Lock-type operations should be atomic::acquire, and unlock-type operations should be atomic::release, so setting that here. Additionally, change `unlock()` so it cannot fail.
Lock-type operations should be atomic::acquire, and unlock-type operations should be atomic::release, so setting that here. Additionally, change `unlock()` so it cannot fail.