This week's book giveaways are in the Refactoring and Agile forums. We're giving away four copies each of Re-engineering Legacy Software and Docker in Action and have the authors on-line! See this thread and this one for details.
in the Monkhouse DVD example (by the way it is such an orgnized and easy to follow book, thanks Monkhouse) we can find 2 levels of locking: 1. db layer, that's when we have to acquire a lock (could be read or read/write lock) before we do any operation depending on the operation. 2. inside the reservation manager, which provides logical locking.
now as a class we can't really reach to the database without going throw the facade, which gives us the ability to logically lock records before dealing with them.
so why would we still need the DB lower-level-locking (the frist one) if we are using the logical higher-level-locking anyway ?
SCBCD - SCWCD - SCJD - SCJP - OCA
posted 8 years ago
thread 1 is going to write at offset 8: RAF.seek(8);
then thread 2 jumps in: thread 2 is going to read at offset 5: RAF.seek(5); RAF.read();
and then thread 1 continues: RAF.write() -> but the offset is wrong [ August 29, 2007: Message edited by: John Stone ]