다음을 통해 공유


LogConsistentGrain<TView> 클래스

정의

상태를 관리하기 위해 로그 일관성을 사용하는 모든 조직에 대한 기본 클래스입니다. 로그 일관성을 사용하는 조직과 동일합니다 Grain<TGrainState> . (SiloAssemblyLoader는 이를 사용하여 형식을 추출합니다.)

public abstract class LogConsistentGrain<TView> : Orleans.Grain, Orleans.ILifecycleParticipant<Orleans.Runtime.IGrainLifecycle>
type LogConsistentGrain<'View> = class
    inherit Grain
    interface ILifecycleParticipant<IGrainLifecycle>
Public MustInherit Class LogConsistentGrain(Of TView)
Inherits Grain
Implements ILifecycleParticipant(Of IGrainLifecycle)

형식 매개 변수

TView

보기의 형식

상속
LogConsistentGrain<TView>
파생
구현

생성자

LogConsistentGrain<TView>()

상태를 관리하기 위해 로그 일관성을 사용하는 모든 조직에 대한 기본 클래스입니다. 로그 일관성을 사용하는 조직과 동일합니다 Grain<TGrainState> . (SiloAssemblyLoader는 이를 사용하여 형식을 추출합니다.)

속성

DefaultAdaptorFactory

사용할 기본 어댑터 팩터리를 가져오거나 기본값이 없는 경우 null을 가져옵니다(이 경우 사용자는 일관성 공급자를 구성해야 합니다).

GrainFactory

다른 조직에 액세스하는 데 사용할 수 있는 개체를 가져옵니다. 단위 테스트를 위해 직접 만든 경우와 같이 이 조직이 런타임과 연결되지 않은 경우 Null입니다.

(다음에서 상속됨 Grain)
GrainReference

상태를 관리하기 위해 로그 일관성을 사용하는 모든 조직에 대한 기본 클래스입니다. 로그 일관성을 사용하는 조직과 동일합니다 Grain<TGrainState> . (SiloAssemblyLoader는 이를 사용하여 형식을 추출합니다.)

(다음에서 상속됨 Grain)
IdentityString

형식 및 기본 키를 포함하여 조직의 사일로이젠티에 대한 문자열 표현입니다.

(다음에서 상속됨 Grain)
RuntimeIdentity

현재 사일로의 고유 식별자입니다. 이 문자열에는 의미 체계 콘텐츠가 없지만 로깅에 유용할 수 있습니다.

(다음에서 상속됨 Grain)
ServiceProvider

런타임에서 관리하는 IServiceProvider를 가져옵니다. 단위 테스트를 위해 직접 만든 경우와 같이 이 조직이 런타임과 연결되지 않은 경우 Null입니다.

(다음에서 상속됨 Grain)

메서드

DeactivateOnIdle()

현재 조직 메서드 호출이 완료된 후 조직의 이 활성화를 비활성화합니다. 이 호출은 현재 메서드의 끝에서 비활성화 및 제거될 현재 조직의 활성화를 표시합니다. 이 조직에 대한 다음 호출은 다른 활성화를 사용하게 되며, 이는 일반적으로 런타임에 의해 새 활성화가 자동으로 생성됨을 의미합니다.

(다음에서 상속됨 Grain)
DelayDeactivation(TimeSpan)

적어도 지정된 기간 동안 이 활성화의 비활성화를 지연합니다. 양수 timeSpan 값은 "해당 기간 동안 이 활성화의 GC 방지"를 의미합니다. 음수 timeSpan 값은 "DelayDeactivation 호출의 이전 설정을 취소하고 이 활성화가 일반 정품 인증 가비지 수집 설정에 따라 동작하도록 함"을 의미합니다. DeactivateOnIdle 메서드는 현재 "활성 유지" 설정을 실행 취소/재정의하여 이 조직을 즉시 비활성화에 사용할 수 있도록 합니다.

(다음에서 상속됨 Grain)
GetLogger()

이 조직의 코드가 추적에 사용할 수 있는 로거 개체를 반환합니다. 로거 이름은 조직 클래스 이름에서 파생됩니다.

(다음에서 상속됨 Grain)
GetLogger(String)

이 조직의 코드가 추적에 사용할 수 있는 로거 개체를 반환합니다.

(다음에서 상속됨 Grain)
GetReminder(String)

이전에 등록된 미리 알림을 반환합니다.

(다음에서 상속됨 Grain)
GetReminders()

조직에서 등록한 모든 미리 알림 목록을 반환합니다.

(다음에서 상속됨 Grain)
GetStreamProvider(String)

상태를 관리하기 위해 로그 일관성을 사용하는 모든 조직에 대한 기본 클래스입니다. 로그 일관성을 사용하는 조직과 동일합니다 Grain<TGrainState> . (SiloAssemblyLoader는 이를 사용하여 형식을 추출합니다.)

(다음에서 상속됨 Grain)
GetStreamProviders()

상태를 관리하기 위해 로그 일관성을 사용하는 모든 조직에 대한 기본 클래스입니다. 로그 일관성을 사용하는 조직과 동일합니다 Grain<TGrainState> . (SiloAssemblyLoader는 이를 사용하여 형식을 추출합니다.)

(다음에서 상속됨 Grain)
InstallAdaptor(ILogViewAdaptorFactory, Object, String, IGrainStorage, ILogConsistencyProtocolServices)

조직 생성 직후 호출하여 로그 뷰 어댑터 설치

MigrateOnIdle()

이 instance 다른 위치로 마이그레이션하려고 시도합니다. 마이그레이션은 현재 RequestContext를 캡처하여 활성화의 배치 디렉터가 사용할 수 있도록 하여 새 위치를 선택할 때 고려할 수 있도록 합니다. 마이그레이션은 요청이 실행되지 않을 때 비동기적으로 발생하며 활성화의 배치 디렉터가 대체 위치를 선택하지 않으면 발생하지 않습니다.

(다음에서 상속됨 Grain)
OnActivateAsync()

이 메서드는 조직 활성화 프로세스가 끝날 때 호출됩니다. 메시지가 조직에 디스패치되기 전에 호출됩니다. 선언된 영구 상태가 있는 조직의 경우 State 속성이 채워진 후 이 메서드가 호출됩니다.

(다음에서 상속됨 Grain)
OnActivateAsync(CancellationToken)

이 메서드는 조직 활성화 프로세스가 끝날 때 호출됩니다. 메시지가 조직에 디스패치되기 전에 호출됩니다. 선언된 영구 상태가 있는 조직의 경우 State 속성이 채워진 후 이 메서드가 호출됩니다.

(다음에서 상속됨 Grain)
OnDeactivateAsync()

이 메서드는 조직 비활성화 프로세스의 시작 부분에서 호출됩니다.

(다음에서 상속됨 Grain)
OnDeactivateAsync(DeactivationReason, CancellationToken)

이 메서드는 조직 비활성화 프로세스의 시작 부분에서 호출됩니다.

(다음에서 상속됨 Grain)
Participate(IGrainLifecycle)

상태를 관리하기 위해 로그 일관성을 사용하는 모든 조직에 대한 기본 클래스입니다. 로그 일관성을 사용하는 조직과 동일합니다 Grain<TGrainState> . (SiloAssemblyLoader는 이를 사용하여 형식을 추출합니다.)

RegisterOrUpdateReminder(String, TimeSpan, TimeSpan)

지속적이고 신뢰할 수 있는 미리 알림을 등록하여 일반 알림(미리 알림)을 조직에 보냅니다. 조직은 인터페이스를 Orleans.IRemindable 구현해야 하며 이 조직에 대한 미리 알림이 콜백 메서드로 ReceiveReminder 전송됩니다. 타이머가 실행될 때 현재 조직이 비활성화되면 이 미리 알림을 수신하기 위해 이 조직의 새 활성화가 만들어집니다. 이름이 같은 기존 미리 알림이 이미 있는 경우 이 새 미리 알림으로 해당 미리 알림을 덮어씁니다. 이 조직에 대해 여러 활성화가 있는 경우에도 미리 알림은 항상 이 조직의 한 활성화에 의해 수신됩니다.

(다음에서 상속됨 Grain)
RegisterTimer(Func<Object,Task>, Object, TimeSpan, TimeSpan)

타이머를 등록하여 이 조직에 주기적인 콜백을 보냅니다.

(다음에서 상속됨 Grain)
UnregisterReminder(IGrainReminder)

이전에 등록된 미리 알림을 등록 취소합니다.

(다음에서 상속됨 Grain)

명시적 인터페이스 구현

IGrainBase.GrainContext

상태를 관리하기 위해 로그 일관성을 사용하는 모든 조직에 대한 기본 클래스입니다. 로그 일관성을 사용하는 조직과 동일합니다 Grain<TGrainState> . (SiloAssemblyLoader는 이를 사용하여 형식을 추출합니다.)

(다음에서 상속됨 Grain)

확장 메서드

DeactivateOnIdle(IGrainBase)

현재 조직 메서드 호출이 완료된 후 이 조직 활성화를 비활성화합니다. 이 호출은 현재 메서드의 끝에서 비활성화 및 제거될 현재 조직의 활성화를 표시합니다. 이 조직에 대한 다음 호출은 다른 활성화를 사용하게 되며, 이는 일반적으로 런타임에 의해 새 활성화가 자동으로 생성됨을 의미합니다.

MigrateOnIdle(IGrainBase)

이 instance 다른 위치로 마이그레이션하려고 시도합니다. 마이그레이션은 현재 RequestContext를 캡처하여 활성화의 배치 디렉터가 사용할 수 있도록 하여 새 위치를 선택할 때 고려할 수 있도록 합니다. 마이그레이션은 요청이 실행되지 않을 때 비동기적으로 발생하며 활성화의 배치 디렉터가 대체 위치를 선택하지 않으면 발생하지 않습니다.

AsReference(IAddressable, Type)

제공된 조직에 대한 형식화된 참조를 반환합니다.

AsReference<TGrainInterface>(IAddressable)

제공된 조직에 대한 형식화된 참조를 반환합니다.

Cast(IAddressable, Type)

제공된 조직에 대한 형식화된 참조를 반환합니다.

Cast<TGrainInterface>(IAddressable)

제공된 조직에 대한 형식화된 참조를 반환합니다.

GetGrainId(IAddressable)

제공된 조직에 해당하는 조직 ID를 반환합니다.

GetPrimaryKey(IAddressable)

Guid 조직 기본 키의 표현을 반환합니다.

GetPrimaryKey(IAddressable, String)

Guid 조직 기본 키의 표현을 반환합니다.

GetPrimaryKeyLong(IAddressable)

long 조직 기본 키의 표현을 반환합니다.

GetPrimaryKeyLong(IAddressable, String)

long 조직 기본 키의 표현을 반환합니다.

GetPrimaryKeyString(IAddressable)

조직의 string 기본 키를 반환합니다.

IsPrimaryKeyBasedOnLong(IAddressable)

기본 키의 일부가 형식 long인지 여부를 반환합니다.

GetReminder(Grain, String)

이전에 등록된 미리 알림을 반환합니다.

GetReminder(IGrainBase, String)

이전에 등록된 미리 알림을 반환합니다.

GetReminders(Grain)

조직에서 등록한 모든 미리 알림 목록을 반환합니다.

GetReminders(IGrainBase)

조직에서 등록한 모든 미리 알림 목록을 반환합니다.

RegisterOrUpdateReminder(Grain, String, TimeSpan, TimeSpan)

지속적이고 신뢰할 수 있는 미리 알림을 등록하여 일반 알림(미리 알림)을 조직에 보냅니다. 조직은 인터페이스를 Orleans.IRemindable 구현해야 하며 이 조직에 대한 미리 알림이 콜백 메서드로 ReceiveReminder 전송됩니다. 타이머가 실행될 때 현재 조직이 비활성화되면 이 미리 알림을 수신하기 위해 이 조직의 새 활성화가 만들어집니다. 이름이 같은 기존 미리 알림이 이미 있는 경우 이 새 미리 알림으로 해당 미리 알림을 덮어씁니다. 이 조직에 대해 여러 활성화가 있는 경우에도 미리 알림은 항상 이 조직의 한 활성화에 의해 수신됩니다.

RegisterOrUpdateReminder(IGrainBase, String, TimeSpan, TimeSpan)

지속적이고 신뢰할 수 있는 미리 알림을 등록하여 일반 알림(미리 알림)을 조직에 보냅니다. 조직은 인터페이스를 Orleans.IRemindable 구현해야 하며 이 조직에 대한 미리 알림이 콜백 메서드로 ReceiveReminder 전송됩니다. 타이머가 실행될 때 현재 조직이 비활성화되면 이 미리 알림을 수신하기 위해 이 조직의 새 활성화가 만들어집니다. 이름이 같은 기존 미리 알림이 이미 있는 경우 이 새 미리 알림으로 해당 미리 알림을 덮어씁니다. 이 조직에 대해 여러 활성화가 있는 경우에도 미리 알림은 항상 이 조직의 한 활성화에 의해 수신됩니다.

UnregisterReminder(Grain, IGrainReminder)

이전에 등록된 미리 알림을 등록 취소합니다.

UnregisterReminder(IGrainBase, IGrainReminder)

이전에 등록된 미리 알림을 등록 취소합니다.

GetStreamProvider(Grain, String)

지정된 를 사용하여 스트림 공급자를 가져옵니다 name.

GetStreamProvider(IGrainBase, String)

지정된 를 사용하여 스트림 공급자를 가져옵니다 name.

적용 대상