You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2013/11/12 18:05:02 UTC
svn commit: r1541153 -
/cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/BusFactory.java
Author: dkulp
Date: Tue Nov 12 17:05:02 2013
New Revision: 1541153
URL: http://svn.apache.org/r1541153
Log:
Merged revisions 1541140 via git cherry-pick from
https://svn.apache.org/repos/asf/cxf/trunk
........
r1541140 | dkulp | 2013-11-12 11:57:27 -0500 (Tue, 12 Nov 2013) | 2 lines
Make the thread bus holders final so the jit can optimize the accesses better.
........
Modified:
cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/BusFactory.java
Modified: cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/BusFactory.java
URL: http://svn.apache.org/viewvc/cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/BusFactory.java?rev=1541153&r1=1541152&r2=1541153&view=diff
==============================================================================
--- cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/BusFactory.java (original)
+++ cxf/branches/2.7.x-fixes/api/src/main/java/org/apache/cxf/BusFactory.java Tue Nov 12 17:05:02 2013
@@ -73,8 +73,8 @@ public abstract class BusFactory {
volatile boolean stale;
}
- protected static Map<Thread, BusHolder> threadBusses = new WeakHashMap<Thread, BusHolder>();
- protected static ThreadLocal<BusHolder> threadBus = new ThreadLocal<BusHolder>();
+ protected static final Map<Thread, BusHolder> THREAD_BUSSES = new WeakHashMap<Thread, BusHolder>();
+ protected static final ThreadLocal<BusHolder> THREAD_BUS = new ThreadLocal<BusHolder>();
private static final Logger LOG = LogUtils.getL7dLogger(BusFactory.class);
@@ -114,21 +114,21 @@ public abstract class BusFactory {
}
private static BusHolder getThreadBusHolder(boolean set) {
- BusHolder h = threadBus.get();
+ BusHolder h = THREAD_BUS.get();
if (h == null || h.stale) {
Thread cur = Thread.currentThread();
- synchronized (threadBusses) {
- h = threadBusses.get(cur);
+ synchronized (THREAD_BUSSES) {
+ h = THREAD_BUSSES.get(cur);
}
if (h == null || h.stale) {
h = new BusHolder();
- synchronized (threadBusses) {
- threadBusses.put(cur, h);
+ synchronized (THREAD_BUSSES) {
+ THREAD_BUSSES.put(cur, h);
}
}
if (set) {
- threadBus.set(h);
+ THREAD_BUS.set(h);
}
}
return h;
@@ -146,7 +146,7 @@ public abstract class BusFactory {
b.bus = bus;
if (bus == null) {
b.stale = true;
- threadBus.remove();
+ THREAD_BUS.remove();
}
}
@@ -157,17 +157,17 @@ public abstract class BusFactory {
*/
public static void setThreadDefaultBus(Bus bus) {
if (bus == null) {
- BusHolder h = threadBus.get();
+ BusHolder h = THREAD_BUS.get();
if (h == null) {
Thread cur = Thread.currentThread();
- synchronized (threadBusses) {
- h = threadBusses.get(cur);
+ synchronized (THREAD_BUSSES) {
+ h = THREAD_BUSSES.get(cur);
}
}
if (h != null) {
h.bus = null;
h.stale = true;
- threadBus.remove();
+ THREAD_BUS.remove();
}
} else {
BusHolder b = getThreadBusHolder(true);
@@ -183,18 +183,18 @@ public abstract class BusFactory {
*/
public static Bus getAndSetThreadDefaultBus(Bus bus) {
if (bus == null) {
- BusHolder b = threadBus.get();
+ BusHolder b = THREAD_BUS.get();
if (b == null) {
Thread cur = Thread.currentThread();
- synchronized (threadBusses) {
- b = threadBusses.get(cur);
+ synchronized (THREAD_BUSSES) {
+ b = THREAD_BUSSES.get(cur);
}
}
if (b != null) {
Bus orig = b.bus;
b.bus = null;
b.stale = true;
- threadBus.remove();
+ THREAD_BUS.remove();
return orig;
}
return null;
@@ -228,11 +228,11 @@ public abstract class BusFactory {
}
return b.bus;
}
- BusHolder h = threadBus.get();
+ BusHolder h = THREAD_BUS.get();
if (h == null || h.stale) {
Thread cur = Thread.currentThread();
- synchronized (threadBusses) {
- h = threadBusses.get(cur);
+ synchronized (THREAD_BUSSES) {
+ h = THREAD_BUSSES.get(cur);
}
}
return h == null || h.stale ? null : h.bus;
@@ -254,8 +254,8 @@ public abstract class BusFactory {
* @param bus the bus to remove
*/
public static void clearDefaultBusForAnyThread(final Bus bus) {
- synchronized (threadBusses) {
- for (final Iterator<BusHolder> iterator = threadBusses.values().iterator();
+ synchronized (THREAD_BUSSES) {
+ for (final Iterator<BusHolder> iterator = THREAD_BUSSES.values().iterator();
iterator.hasNext();) {
BusHolder itBus = iterator.next();
if (bus == null || itBus == null || itBus.bus == null