question: this method releases object-level read lock , and global-level read lock concode_field_sep Map<Object,ReentrantReadWriteLock> objectLocks concode_elem_sep ReentrantReadWriteLock globalLock concode_elem_sep ReentrantReadWriteLock externalsLock concode_field_sep void externalsWriteUnlock concode_elem_sep void attachObject concode_elem_sep void detachObject concode_elem_sep void objectReadLock concode_elem_sep void shapeWriteLock concode_elem_sep void shapeWriteUnlock concode_elem_sep void objectWriteUnlock concode_elem_sep void externalsReadLock concode_elem_sep void externalsReadUnlock concode_elem_sep void globalWriteUnlock concode_elem_sep void globalReadLock concode_elem_sep void shapeReadUnlock concode_elem_sep void globalReadUnlock concode_elem_sep void globalWriteLock concode_elem_sep void externalsWriteLock concode_elem_sep void shapeReadLock concode_elem_sep void objectWriteLock
target: void function ( Object arg0 ) { objectLocks . get ( arg0 ) . readLock ( ) . unlock ( ) ; }