block
Possibly blocks the current thread, for example waiting for a lock or condition.
Return
true if no additional blocking is necessary (i.e., if isReleasable would return true)
Throws
if interrupted while waiting (the method is not required to do so, but is allowed to)