public class ServiceUtils
extends java.lang.Object
| Constructor and Description |
|---|
ServiceUtils() |
| Modifier and Type | Method and Description |
|---|---|
static int |
calculatePathHash(java.lang.String appName,
java.lang.String txName,
java.lang.Integer optionalReferringPathHash) |
static int |
hexStringToInt(java.lang.String val) |
static java.lang.String |
intToHexString(int val) |
static void |
readMemoryBarrier(java.util.concurrent.atomic.AtomicInteger i)
Call before reading from shared variable.
|
static int |
reversePathHash(java.lang.String appName,
java.lang.String txName,
java.lang.Integer optionalReferringPathHash) |
static void |
writeMemoryBarrier(java.util.concurrent.atomic.AtomicInteger i)
Call after writing to shared variable.
|
public static int calculatePathHash(java.lang.String appName,
java.lang.String txName,
java.lang.Integer optionalReferringPathHash)
public static int reversePathHash(java.lang.String appName,
java.lang.String txName,
java.lang.Integer optionalReferringPathHash)
public static java.lang.String intToHexString(int val)
public static int hexStringToInt(java.lang.String val)
public static void readMemoryBarrier(java.util.concurrent.atomic.AtomicInteger i)
AtomicInteger value which is implemented
as a volatile. This triggers a read barrier. Additional logic is added to ensure the JVM can't optimize out this
read.i - public static void writeMemoryBarrier(java.util.concurrent.atomic.AtomicInteger i)
AtomicInteger value which is
implemented as a volatile. This triggers a write barrier.i -