question: private void disposeCiphers ( ) { synchronized ( readLock ) { readCipher . dispose ( ) ; } writeLock . lock ( ) ; try { writeCipher . dispose ( ) ; } finally { writeLock . unlock ( ) ; } }
target:  Called by closeInternal() only. Be sure to consider the synchronization locks carefully before calling it elsewhere.