UserDataBorrowRef
UserDataRef
T: Sync
Mutex
RwLock
send
Unfortunately RwLock allow access to the userdata from multiple threads without enforcing `Sync` marker.