question: releases several locks on the underlying semaphore . this is typically not done by the same thread that acquired the lock , but by the thread that picked up the message . concode_field_sep Semaphore semaphore concode_field_sep boolean tryAcquire concode_elem_sep String toString concode_elem_sep int availablePermits
target: void function ( int arg0 ) { if ( this . semaphore != null ) { this . semaphore . release ( arg0 ) ; } }