/** * Allocate a new VariableAccessor for the named variable. * * @param name the name of the variable * @return the new VariableAccessor */ synchronized final VariableAccessor allocateVariableAccessor(String name) { int id = realClass.id; String[] myVariableNames = variableNames; int newIndex = myVariableNames.length; String[] newVariableNames = new String[newIndex + 1]; VariableAccessor newVariableAccessor; if (UnsafeHolder.U == null) { newVariableAccessor = new SynchronizedVariableAccessor(realClass, name, newIndex, id); } else { newVariableAccessor = new StampedVariableAccessor(realClass, name, newIndex, id); } System.arraycopy(myVariableNames, 0, newVariableNames, 0, newIndex); newVariableNames[newIndex] = name; variableNames = newVariableNames; return newVariableAccessor; }
/** * Allocate a new VariableAccessor for the named variable. * * @param name the name of the variable * @return the new VariableAccessor */ synchronized final VariableAccessor allocateVariableAccessor(String name) { int id = realClass.id; String[] myVariableNames = variableNames; int newIndex = myVariableNames.length; String[] newVariableNames = new String[newIndex + 1]; VariableAccessor newVariableAccessor; if (UnsafeHolder.U == null) { newVariableAccessor = new SynchronizedVariableAccessor(realClass, name, newIndex, id); } else { newVariableAccessor = new StampedVariableAccessor(realClass, name, newIndex, id); } System.arraycopy(myVariableNames, 0, newVariableNames, 0, newIndex); newVariableNames[newIndex] = name; variableNames = newVariableNames; return newVariableAccessor; }
newVariableAccessor = new SynchronizedVariableAccessor(realClass, name, newIndex, id); } else { newVariableAccessor = new StampedVariableAccessor(realClass, name, newIndex, id); } else { newVariableAccessor = new StampedVariableAccessor(realClass, name, newIndex, id);
newVariableAccessor = new SynchronizedVariableAccessor(realClass, name, newIndex, id); } else { newVariableAccessor = new StampedVariableAccessor(realClass, name, newIndex, id); } else { newVariableAccessor = new StampedVariableAccessor(realClass, name, newIndex, id);