let's have class:
class zoo { protected string bearname; protected double trainersalary; protected integer monkeycount; } can 1 thread write these fields, , 1 read them, without requiring synchronized access zoo object?
note: these values can treated separate 1 another, doesn't matter trainersalary changed while monkeycount read.
edit:
just clarify, fields mutable; referenced objects immutable.
technically need make them final, volatile or read and write them using synchronzied guarantee reader read up-to-date value. have right now, if 1 thread writes in value, there's no guarantee thread read same value. because the reading thread may see cached valued. more multi-core cpus , various levels of cache.
a great book on java concurrency in practice.
Comments
Post a Comment