Re: A question about synchronized threads
byhesed wrote:
I thought that synchronizing entire methods would be wasteful.
Why?
Also, although two methods need to be synchronized,
if two methods are totally unrelated to each other,
then it would be too bad, isn't it?\
We cannot tell without an SSCCE.
http://sscce.org/
Please provide one.
Also, if two methods are "totally unrelated to each other" then you don't need
any synchronization at all. They shouldn't even be in the same class, perhaps
not even in the same application.
The rate of using CPU resources will be too low.
That is why I though it is ineffectual.
How do you know? Please explain your measurement methodology for performance.
What was the metric of performance, what value did it have, and how much of
overall application performance was it, percentagewise?
Make sure that you measure under conditions similar to anticipated real-life
loads, and compare proposed "optimizations" to your baseline under the same
conditions.
Especially with concurrent programming, it is a terrible, terrible mistake to
imagine that you will "optimize" something when you don't have any objective
data. Much more likely, you will "optimize" by getting wrong answers in half
the time of correct ones.
The single best, most effective way to optimize concurrent code is not to
share data. The second-best way is to make shared-data immutable (read-only).
You should do ABSOLUTELY NOTHING about or with concurrent programming until
you've read at least one of the two books people have recommended to you, and
understand it.
--
Lew
Honi soit qui mal y pense.
http://upload.wikimedia.org/wikipedia/commons/c/cf/Friz.jpg