So you mean that the original author (mike jackson) was saying that he used synchronized code blocks to apply a finer level of detail in specifying what is synchronized and what isn't, as opposed to just declaring an entire method synchronized?

I understand that synchronization implies a performance penalty, but I wasn't sure what the advantage to using synchronized blocks over synchronized methods was.


Erik




Tobias Dittrich wrote:
The reason why you don't want to use synchronized methods is that a
synchronized block can only be executed by one thread at a time. Every other
thread wanting to access this method will be blocked during this time (well,
basically). So you want to try to keep the synchonized blocks as small as
possible.

Having said that I wonder weather performance is an issue in the singleton
vs only-static discussion. Is there a significant difference in execution
speed? After all one has to make one additional method call every time when
accessing a singleton method (the getInstance() which is  synchronized,
too). And since we're off topic anyway: is a call to a static method faster
than a "normal" one to an object (well, I mean the overhead from the method
call, not the execution speed of the method body ... )?


Cheers
Tobi



From: "Erik Price" <[EMAIL PROTECTED]>
To: "Tomcat Users List" <[EMAIL PROTECTED]>
Sent: Wednesday, January 29, 2003 1:46 PM
Subject: Re: about singletons (ot)



Mike Jackson wrote:

The difference is that if you use a singleton there's one instance.  If
everything
is static then you only have one copy.  Usually when you use a singleton
it's to
control access to some resource, the intent is that you use the
singleton

and some
synchronized calls (note I don't mean synchronized methods, but
synchronized

code
blocks) to control threads using that resource.
Why could you not use synchronized methods?



Erik


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to