only one writer at a time is allowed to perform blocking only when already writing or reading . concode_field_sep int status concode_field_sep boolean exitReadEnterWrite concode_elem_sep void enterRead concode_elem_sep void exitWriteEnterRead concode_elem_sep String toString concode_elem_sep void exitRead concode_elem_sep void exitWrite
void function ( ) { while ( status != 0 ) { try { wait ( ) ; } catch ( InterruptedException loc0 ) { } } status -- ; }