언어

DoubleAccumulator 클래스

정의

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

[Android.Runtime.Register("java/util/concurrent/atomic/DoubleAccumulator", ApiSince=24, DoNotGenerateAcw=true)]
public class DoubleAccumulator : Java.Lang.Number, IDisposable
[<Android.Runtime.Register("java/util/concurrent/atomic/DoubleAccumulator", ApiSince=24, DoNotGenerateAcw=true)>]
type DoubleAccumulator = class
    inherit Number
    interface ISerializable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
상속
DoubleAccumulator
특성
구현

설명

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다. 업데이트(메서드 #accumulate)가 스레드 간에 경합되면 변수 집합이 동적으로 증가하여 경합을 줄일 수 있습니다. 메서드 #get (또는 마찬가지로 #doubleValue)는 업데이트를 유지 관리하는 변수에서 현재 값을 반환합니다.

이 클래스는 일반적으로 여러 스레드가 자주 업데이트되지만 읽기 빈도가 낮은 요약 통계와 같은 용도로 사용되는 공통 값을 업데이트하는 경우 대안으로 선호됩니다.

제공된 누적기 함수는 스레드 간의 경합으로 인해 업데이트 시도가 실패할 때 다시 적용될 수 있으므로 부작용이 없어야 합니다. 예측 가능한 결과를 위해 누적기 함수는 사용 컨텍스트에 필요한 부동 소수점 허용 오차 내에서 정류 및 연관성이어야 합니다. 함수는 기존 값(또는 ID)을 하나의 인수로 적용하고 지정된 업데이트를 다른 인수로 적용합니다. 예를 들어 실행 중인 최대값을 유지하려면 ID와 함께 Double::max 제공할 Double.NEGATIVE_INFINITY 수 있습니다. 스레드 내 또는 스레드 간 누적 순서는 보장되지 않습니다. 따라서 숫자 안정성이 필요한 경우 이 클래스는 적용되지 않을 수 있으며, 특히 크기가 상당히 다른 값을 결합하는 경우 해당 클래스가 적용되지 않을 수 있습니다.

클래스 DoubleAdder 는 합계를 유지하는 일반적인 특수 사례에 대해 이 클래스의 기능과 유사합니다. 호출 new DoubleAdder() 은 .에 해당합니다 new DoubleAccumulator((x, y) -> x + y, 0.0).

이 클래스는 Number확장되지만 인스턴스가 변경될 것으로 예상되므로 컬렉션 키로 유용하지 않으므로 메서드를 정의 <>< 하지>equals 않습니다.hashCodecompareTo

1.8에 추가되었습니다.

에 대한 java.util.concurrent.atomic.DoubleAccumulatorJava 설명서

이 페이지의 일부는 만들고 공유한 작업을 기반으로 하며 에 설명된 조건에 따라 사용됩니다.

생성자

Name Description
DoubleAccumulator(IDoubleBinaryOperator, Double)

지정된 누적기 함수 및 ID 요소를 사용하여 새 인스턴스를 만듭니다.

DoubleAccumulator(IntPtr, JniHandleOwnership)

JNI 개체의 관리되는 표현을 만들 때 사용되는 생성자입니다. 런타임에서 호출합니다.

속성

Name Description
Class

Object런타임 클래스를 반환합니다.

(다음에서 상속됨 Object)
Handle

기본 Android 인스턴스에 대한 핸들입니다.

(다음에서 상속됨 Object)
JniIdentityHashCode

interop 런타임에 의해 이 Java 피어에 할당된 ID 해시 코드를 가져옵니다.

(다음에서 상속됨 Object)
JniManagedPeerState

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
JniPeerMembers

이 Java 피어의 멤버를 호출하는 데 사용되는 JNI 메타데이터를 가져옵니다.

PeerReference

이 Java 피어에 대한 JNI 개체 참조를 가져옵니다.

(다음에서 상속됨 Object)
ThenReset

그 다음에 적용되는 #get것과 #reset 동일합니다.

ThresholdClass

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

ThresholdType

이 API는 Android용 Mono 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

메서드

Name Description
Accumulate(Double)

지정된 값으로 업데이트합니다.

ByteValue()

지정된 숫자의 값을 .로 byte반환합니다.

(다음에서 상속됨 Number)
Clone()

이 개체의 복사본을 만들고 반환합니다.

(다음에서 상속됨 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
Dispose()

이 Java 피어에서 보유한 리소스를 해제합니다.

(다음에서 상속됨 Object)
Dispose(Boolean)

이 Java 피어에서 보유한 리소스를 해제합니다.

(다음에서 상속됨 Object)
DisposeUnlessReferenced()

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
DoubleValue()

#get와 동등합니다.

Equals(Object)

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
Equals(Object)

다른 개체가 이 개체와 "같음"인지 여부를 나타냅니다.

(다음에서 상속됨 Object)
FloatValue()

축소된 기본 변환 후의 #get float 현재 값을 반환합니다.

Get()

현재 값을 반환합니다.

GetHashCode()

개체에 대한 해시 코드 값을 반환합니다.

(다음에서 상속됨 Object)
IntValue()

#get 현재 값을 축소된 기본 변환 후의 값으로 int 반환합니다.

JavaFinalize()

가비지 수집에서 개체에 대한 참조가 더 이상 없다고 판단할 때 개체의 가비지 수집기에서 호출됩니다.

(다음에서 상속됨 Object)
LongValue()

축소된 기본 변환 후의 #get long 현재 값을 반환합니다.

Notify()

이 개체의 모니터에서 대기 중인 단일 스레드를 해제합니다.

(다음에서 상속됨 Object)
NotifyAll()

이 개체의 모니터에서 대기 중인 모든 스레드를 해제합니다.

(다음에서 상속됨 Object)
Reset()

ID 값에 대한 업데이트를 유지 관리하는 변수를 다시 설정합니다.

SetHandle(IntPtr, JniHandleOwnership)

Handle 속성을 설정합니다.

(다음에서 상속됨 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
ShortValue()

지정된 숫자의 값을 .로 short반환합니다.

(다음에서 상속됨 Number)
ToArray<T>()

이 Java 배열 래퍼에서 관리되는 배열을 만듭니다.

(다음에서 상속됨 Object)
ToString()

개체의 문자열 표현을 반환합니다.

(다음에서 상속됨 Object)
UnregisterFromRuntime()

interop 런타임에서 이 Java 피어의 등록을 취소합니다.

(다음에서 상속됨 Object)
Wait()

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <알림을 받><거나 ><>중단/종료<합니다.>

(다음에서 상속됨 Object)
Wait(Int64, Int32)

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 >중단/<종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다.

(다음에서 상속됨 Object)
Wait(Int64)

현재 스레드가 각성될 때까지 대기하게 하며, 일반적으로 <>알림을 받<거나 >중단/<종료><>하거나 일정량의 실시간 경과가 발생할 때까지 대기합니다.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

Name Description
IJavaPeerable.Disposed()

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
IJavaPeerable.Finalized()

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

(다음에서 상속됨 JavaObject)
IJavaPeerable.UnregisterFromRuntime()

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

확장명 메서드

Name Description
GetJniTypeName(IJavaPeerable)

인스턴스 self형식의 JNI 이름을 가져옵니다.

JavaAs<TResult>(IJavaPeerable)

형식self을 강제 TResult 변환하여 강제 변환이 Java 쪽에서 유효한지 확인합니다.

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

제공된 함수를 사용하여 업데이트된 실행 double 값을 함께 유지하는 하나 이상의 변수입니다.

TryJavaCast<TResult>(IJavaPeerable, TResult)

형식self을 강제 TResult 변환하여 강제 변환이 Java 쪽에서 유효한지 확인합니다.

적용 대상