[PATCH 1/1] Get rid of synchronization in java.util.logging.LogRecord constructor (original) (raw)

David M. Lloyd david.lloyd at redhat.com
Thu Mar 12 22:35:53 UTC 2009


Switch to atomic ops for the various sequence numbers, as opposed to synchronizing on the class object on every object construction.

diff -r dde3fe2e8164 src/share/classes/java/util/logging/LogRecord.java --- a/src/share/classes/java/util/logging/LogRecord.java Wed Feb 25 14:32:01 2009 +0000 +++ b/src/share/classes/java/util/logging/LogRecord.java Thu Mar 12 17:12:22 2009 -0500 @@ -25,6 +25,8 @@

package java.util.logging; import java.util.; +import java.util.concurrent.atomic.AtomicLong; +import java.util.concurrent.atomic.AtomicInteger; import java.io.;

/** @@ -64,9 +66,9 @@ */

public class LogRecord implements java.io.Serializable {

ThreadLocal();

ThreadLocal();

  /**
   * @serial Logging message level

@@ -144,15 +146,13 @@ this.level = level; message = msg; // Assign a thread ID and a unique sequence number.



More information about the core-libs-dev mailing list