On Jun 1, 2012, at 5:26 AM, deadalnix wrote:
> 
> The main drawback is the same as opApply : return (and break/continue but it 
> is less relevant for opSynchronized). Solution to this problem have been 
> proposed in the past using compiler and stack magic.
> 
> It open door for stuff like :
> ReadWriteLock rw;
> synchronized(rw.read) {
> 
> }
> 
> synchronized(rw.write) {
> 
> }

Opens the door?  This works today exactly as outlined above.  Or am I missing a 
part of your argument?

> And many types of lock : spin lock, interprocesses locks, semaphores, . . . 
> And all can be used with the synchronized syntax, and without exposing 
> locking and unlocking primitives.

All works today.

Reply via email to