Use ValueGenerator as a monitor object for synchronized block

See comments at Xchange#610