http://gwt-code-reviews.appspot.com/719801/diff/1/12
File
dev/core/src/com/google/gwt/dev/util/log/speedtracer/SpeedTracerLogger.java
(right):

http://gwt-code-reviews.appspot.com/719801/diff/1/12#newcode81
dev/core/src/com/google/gwt/dev/util/log/speedtracer/SpeedTracerLogger.java:81:
for (int i = 0; i < data.length; i++) {
On 2010/07/27 19:55:27, scottb wrote:
This loop is just Lists.addAll(this.data, data)

yeah, should probably check that data.length % 2 == 0

http://gwt-code-reviews.appspot.com/719801/diff/1/12#newcode234
dev/core/src/com/google/gwt/dev/util/log/speedtracer/SpeedTracerLogger.java:234:
*/
the comments here are now out of date since you no longer need to call
init() before calling get().

i think we should just adopt the On Demand Holder idiom here, with the
added bonus that we can remove the synchronization overhead.

e.g:

private static class LazySpeedTracerLoggerHolder {
  public static SpeedTracerLogger singeleton = new SpeedTracerLogger();
}

public static SpeedTracerLogger get() {
  return LazySpeedTracerLoggerHolder.singleton;
}

See:
http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html
http://www.cs.umd.edu/~pugh/java/memoryModel/jsr-133-faq.html

http://gwt-code-reviews.appspot.com/719801/diff/1/12#newcode263
dev/core/src/com/google/gwt/dev/util/log/speedtracer/SpeedTracerLogger.java:263:
SpeedTracerLogger(Writer writer) {
note that this constructor is just for unit testing

http://gwt-code-reviews.appspot.com/719801/show

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors

Reply via email to