@interface NSMultiReadUniWriteLock : NSObject { void *_priv; } + (id)allocWithZone:(struct _NSZone { } *)a0; - (id)init; - (void)dealloc; - (void)setName:(id)a0; - (void)lock; - (void)unlock; - (id)description; - (id)name; - (void)lockForReading; - (BOOL)lockForReadingBeforeDate:(id)a0; - (void)lockForWriting; - (BOOL)lockForWritingBeforeDate:(id)a0; - (BOOL)tryLockForReading; - (BOOL)tryLockForWriting; @end