Synchronized classes have no public members

Dicebot via Digitalmars-d digitalmars-d at puremagic.com
Thu Oct 15 10:35:01 PDT 2015


On Thursday, 15 October 2015 at 17:10:23 UTC, Steven 
Schveighoffer wrote:
> You can do both of these with synchronized statements, 
> mutex.unlock works and you can use with a condition variable.
>
> As I said before, with the Guard lock, you have more room for 
> error, and visually the lock is better identified with a 
> synchronized statement.

There is no argument it looks nicer but it is a dedicated 
language feature for a minor syntax sugar over a feature that is 
almost never used in modern idiomatic concurrent code. Explicit 
locking in application code is rather old school, same as the 
notion that blindly adding more threads to existing OOP program 
helps to improve performance.

It isn't bad to have it but don't forget Andrei's words about 
constant sum of language complexity - we could have had something 
more useful in totally different domain instead of it.


More information about the Digitalmars-d mailing list