From 0bddef1dea647d01784c0adc9495bc915313186e Mon Sep 17 00:00:00 2001 From: markt Date: Tue, 16 Nov 2010 18:07:56 +0000 Subject: [PATCH] Session manager performance Move sync. No performance change but sync requirements for sub-classes are clearer. Still looking to remove sync completely. git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@1035720 13f79535-47bb-0310-9956-ffa450edef68 --- java/org/apache/catalina/session/ManagerBase.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/java/org/apache/catalina/session/ManagerBase.java b/java/org/apache/catalina/session/ManagerBase.java index d9fc7a5ed..f6c35ec8b 100644 --- a/java/org/apache/catalina/session/ManagerBase.java +++ b/java/org/apache/catalina/session/ManagerBase.java @@ -959,7 +959,7 @@ public abstract class ManagerBase extends LifecycleMBeanBase } - protected void getRandomBytes(byte bytes[]) { + protected synchronized void getRandomBytes(byte bytes[]) { // Generate a byte array containing a session identifier if (devRandomSourceIsValid && randomIS == null) { setRandomFile(devRandomSource); @@ -1008,9 +1008,7 @@ public abstract class ManagerBase extends LifecycleMBeanBase } while (resultLenBytes < this.sessionIdLength) { - synchronized (this) { - getRandomBytes(random); - } + getRandomBytes(random); MessageDigest md = digests.poll(); if (md == null) { // If this fails, NPEs will follow. This should never fail -- 2.11.0