Spec-Zone .ru
спецификации, руководства, описания, API
|
public class AtomicLongArray extends Object implements Serializable
long
массив, в котором элементы могут быть обновлены атомарно. См. java.util.concurrent.atomic
спецификация пакета для описания свойств атомарных переменных.Конструктор и Описание |
---|
AtomicLongArray(int length)
Создает новый AtomicLongArray данной длины, со всеми элементами первоначально обнуляют.
|
AtomicLongArray(long[] array)
Создает новый AtomicLongArray с той же самой длиной как, и все элементы, скопированные с, данный массив.
|
Модификатор и Тип | Метод и Описание |
---|---|
long |
accumulateAndGet(int i, int x, LongBinaryOperator accumulatorFunction)
Атомарно обновляет элемент в, индексируют
i с результатами применения заданной функции к току и данным значениям, возвращая обновленное значение. |
long |
addAndGet(int i, long delta)
Атомарно добавляет, что данное значение к элементу в индексирует
i . |
boolean |
compareAndSet(int i, long expect, long update)
Атомарно устанавливает элемент в позиции
i к данному обновленному значению, если текущая стоимость == математическое ожидание. |
long |
decrementAndGet(int i)
Атомарно декременты одним элемент в индексируют
i . |
long |
get(int i)
Получает текущую стоимость в позиции
i . |
long |
getAndAccumulate(int i, int x, LongBinaryOperator accumulatorFunction)
Атомарно обновляет элемент в, индексируют
i с результатами применения заданной функции к току и данным значениям, возвращая предыдущее значение. |
long |
getAndAdd(int i, long delta)
Атомарно добавляет, что данное значение к элементу в индексирует
i . |
long |
getAndDecrement(int i)
Атомарно декременты одним элемент в индексируют
i . |
long |
getAndIncrement(int i)
Атомарно инкременты одним элемент в индексируют
i . |
long |
getAndSet(int i, long newValue)
Атомарно устанавливает элемент в позиции
i к данному значению и возвратам старое значение. |
long |
getAndUpdate(int i, LongUnaryOperator updateFunction)
Атомарно обновляет элемент в, индексируют
i с результатами применения заданной функции, возвращая предыдущее значение. |
long |
incrementAndGet(int i)
Атомарно инкременты одним элемент в индексируют
i . |
void |
lazySet(int i, long newValue)
В конечном счете устанавливает элемент в позиции
i к данному значению. |
int |
length()
Возвращает длину массива.
|
void |
set(int i, long newValue)
Устанавливает элемент в позиции
i к данному значению. |
Строка |
toString()
Возвращает Строковое представление текущей стоимости массива.
|
long |
updateAndGet(int i, LongUnaryOperator updateFunction)
Атомарно обновляет элемент в, индексируют
i с результатами применения заданной функции, возвращая обновленное значение. |
boolean |
weakCompareAndSet(int i, long expect, long update)
Атомарно устанавливает элемент в позиции
i к данному обновленному значению, если текущая стоимость == математическое ожидание. |
public AtomicLongArray(int length)
length
- длина массиваpublic AtomicLongArray(long[] array)
array
- массив, чтобы скопировать элементы сNullPointerException
- если массив является нулемpublic final int length()
public final long get(int i)
i
.i
- индексированиеpublic final void set(int i, long newValue)
i
к данному значению.i
- индексированиеnewValue
- новое значениеpublic final void lazySet(int i, long newValue)
i
к данному значению.i
- индексированиеnewValue
- новое значениеpublic final long getAndSet(int i, long newValue)
i
к данному значению и возвратам старое значение.i
- индексированиеnewValue
- новое значениеpublic final boolean compareAndSet(int i, long expect, long update)
i
к данному обновленному значению, если текущая стоимость ==
математическое ожидание.i
- индексированиеexpect
- математическое ожиданиеupdate
- новое значениеpublic final boolean weakCompareAndSet(int i, long expect, long update)
i
к данному обновленному значению, если текущая стоимость ==
математическое ожидание. Может перестать работать побочно и не обеспечивает гарантии упорядочивания, так только редко соответствующая альтернатива compareAndSet
.
i
- индексированиеexpect
- математическое ожиданиеupdate
- новое значениеpublic final long getAndIncrement(int i)
i
.i
- индексированиеpublic final long getAndDecrement(int i)
i
.i
- индексированиеpublic final long getAndAdd(int i, long delta)
i
.i
- индексированиеdelta
- значение, чтобы добавитьpublic final long incrementAndGet(int i)
i
.i
- индексированиеpublic final long decrementAndGet(int i)
i
.i
- индексированиеpublic long addAndGet(int i, long delta)
i
.i
- индексированиеdelta
- значение, чтобы добавитьpublic final long getAndUpdate(int i, LongUnaryOperator updateFunction)
i
с результатами применения заданной функции, возвращая предыдущее значение. Функция должна быть без побочных эффектов, так как она может быть повторно применена, когда предпринятые обновления перестали работать из-за конкуренции среди потоков.i
- индексированиеupdateFunction
- функция без побочных эффектовpublic final long updateAndGet(int i, LongUnaryOperator updateFunction)
i
с результатами применения заданной функции, возвращая обновленное значение. Функция должна быть без побочных эффектов, так как она может быть повторно применена, когда предпринятые обновления перестали работать из-за конкуренции среди потоков.i
- индексированиеupdateFunction
- функция без побочных эффектовpublic final long getAndAccumulate(int i, int x, LongBinaryOperator accumulatorFunction)
i
с результатами применения заданной функции к току и данным значениям, возвращая предыдущее значение. Функция должна быть без побочных эффектов, так как она может быть повторно применена, когда предпринятые обновления перестали работать из-за конкуренции среди потоков. Функция применяется с текущей стоимостью в, индексируют i
как его первый параметр, и данное обновление как второй параметр.i
- индексированиеx
- значение обновленияaccumulatorFunction
- функция без побочных эффектов двух параметровpublic final long accumulateAndGet(int i, int x, LongBinaryOperator accumulatorFunction)
i
с результатами применения заданной функции к току и данным значениям, возвращая обновленное значение. Функция должна быть без побочных эффектов, так как она может быть повторно применена, когда предпринятые обновления перестали работать из-за конкуренции среди потоков. Функция применяется с текущей стоимостью в, индексируют i
как его первый параметр, и данное обновление как второй параметр.i
- индексированиеx
- значение обновленияaccumulatorFunction
- функция без побочных эффектов двух параметров
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92