Grain Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Абстрактный базовый класс для всех классов зерна.
public abstract class Grain : Orleans.Runtime.IAddressable
public abstract class Grain : Orleans.ILifecycleParticipant<Orleans.Runtime.IGrainLifecycle>, Orleans.Runtime.IAddressable
public abstract class Grain : Orleans.IGrainBase, Orleans.Runtime.IAddressable
type Grain = class
interface IAddressable
type Grain = class
interface IAddressable
interface ILifecycleParticipant<IGrainLifecycle>
type Grain = class
interface IGrainBase
interface IAddressable
Public MustInherit Class Grain
Implements IAddressable
Public MustInherit Class Grain
Implements IAddressable, ILifecycleParticipant(Of IGrainLifecycle)
Public MustInherit Class Grain
Implements IAddressable, IGrainBase
- Наследование
-
Grain
- Производный
- Реализации
Конструкторы
Grain() |
Этот конструктор никогда не должен вызываться. Мы предоставляем его таким образом, чтобы клиентский код (подклассы grain) не должен добавлять конструктор. Клиентский код должен использовать свойство GrainFactory, чтобы получить ссылку на grain. |
Grain(IGrainContext, IGrainRuntime) |
Разработчики зерна не должны предоставлять этот конструктор, но могут сделать это. Этот конструктор особенно полезен для модульного тестирования, где тестовый код может создать grain и заменить IGrainIdentity и IGrainRuntime двойными (макеты и заглушки). |
Grain(IGrainIdentity, IGrainRuntime) |
Разработчики зерна не должны предоставлять этот конструктор, но могут сделать это. Этот конструктор особенно полезен для модульного тестирования, где тестовый код может создать grain и заменить IGrainIdentity и IGrainRuntime двойными (макеты и заглушки). |
Свойства
GrainContext |
Абстрактный базовый класс для всех классов зерна. |
GrainFactory |
Получает объект, который можно использовать для доступа к другим зернам. Значение NULL, если это зерно не связано с средой выполнения, например при создании непосредственно для модульного тестирования. |
GrainReference |
Абстрактный базовый класс для всех классов зерна. |
IdentityString |
Строковое представление SiloIdentity зерна, включая тип и первичный ключ. |
RuntimeIdentity |
Уникальный идентификатор текущего сило. В этой строке нет семантического содержимого, но это может быть полезно для ведения журнала. |
ServiceProvider |
Возвращает IServiceProvider, управляемый средой выполнения. Значение NULL, если это зерно не связано с средой выполнения, например при создании непосредственно для модульного тестирования. |
Методы
DeactivateOnIdle() |
Деактивируйте эту активацию зерна после завершения текущего вызова метода зерна. Этот вызов помечает эту активацию текущего зерна, который будет деактивирован и удален в конце текущего метода. Следующий вызов этого зерна приведет к использованию другой активации, что обычно означает, что новая активация будет создана автоматически средой выполнения. |
DelayDeactivation(TimeSpan) |
Задержка деактивации этой активации по крайней мере в течение указанного периода времени.
Положительное значение |
GetLogger() |
Возвращает объект средства ведения журнала, который код этого зерна может использовать для трассировки. Имя средства ведения журнала будет производным от имени класса зерна. |
GetLogger(String) |
Возвращает объект средства ведения журнала, который код этого зерна может использовать для трассировки. |
GetReminder(String) |
Возвращает ранее зарегистрированное напоминание. |
GetReminders() |
Возвращает список всех напоминаний, зарегистрированных зерном. |
GetStreamProvider(String) |
Абстрактный базовый класс для всех классов зерна. |
GetStreamProviders() |
Абстрактный базовый класс для всех классов зерна. |
MigrateOnIdle() |
Запускает попытку переноса этого экземпляра в другое расположение. Миграция фиксирует текущую RequestContext, что делает его доступным для директора размещения активации, чтобы он смог рассмотреть его при выборе нового расположения. Миграция будет выполняться асинхронно, если запросы не выполняются, и не произойдет, если директор размещения активации не выбирает альтернативное расположение. |
OnActivateAsync() |
Этот метод вызывается в конце процесса активации зерна. Он вызывается до отправки сообщений в зерно. Для зерна с объявленным постоянным состоянием этот метод вызывается после заполнения свойства State. |
OnActivateAsync(CancellationToken) |
Этот метод вызывается в конце процесса активации зерна. Он вызывается до отправки сообщений в зерно. Для зерна с объявленным постоянным состоянием этот метод вызывается после заполнения свойства State. |
OnDeactivateAsync() |
Этот метод вызывается в начале процесса деактивации зерна. |
OnDeactivateAsync(DeactivationReason, CancellationToken) |
Этот метод вызывается в начале процесса деактивации зерна. |
Participate(IGrainLifecycle) |
Абстрактный базовый класс для всех классов зерна. |
RegisterOrUpdateReminder(String, TimeSpan, TimeSpan) |
Регистрирует постоянное, надежное напоминание для отправки регулярных уведомлений (напоминаний) на зерно.
Зерно должно реализовать интерфейс |
RegisterTimer(Func<Object,Task>, Object, TimeSpan, TimeSpan) |
Устаревшие..
Регистрирует таймер для отправки периодических обратных вызовов в это зерно. |
UnregisterReminder(IGrainReminder) |
Отменяет регистрацию ранее зарегистрированного напоминания. |
Явные реализации интерфейса
IGrainBase.GrainContext |
Абстрактный базовый класс для всех классов зерна. |
Методы расширения
DeactivateOnIdle(IGrainBase) |
Деактивируйте эту активацию зерна после завершения текущего вызова метода зерна. Этот вызов помечает эту активацию текущего зерна, который будет деактивирован и удален в конце текущего метода. Следующий вызов этого зерна приведет к использованию другой активации, что обычно означает, что новая активация будет создана автоматически средой выполнения. |
MigrateOnIdle(IGrainBase) |
Запускает попытку переноса этого экземпляра в другое расположение. Миграция фиксирует текущую RequestContext, что делает его доступным для директора размещения активации, чтобы он смог рассмотреть его при выборе нового расположения. Миграция будет выполняться асинхронно, если запросы не выполняются, и не произойдет, если директор размещения активации не выбирает альтернативное расположение. |
RegisterGrainTimer(IGrainBase, Func<CancellationToken,Task>, GrainTimerCreationOptions) |
Создает таймер зерна. |
RegisterGrainTimer(IGrainBase, Func<CancellationToken,Task>, TimeSpan, TimeSpan) |
Создает таймер зерна. |
RegisterGrainTimer(IGrainBase, Func<Task>, GrainTimerCreationOptions) |
Абстрактный базовый класс для всех классов зерна. |
RegisterGrainTimer(IGrainBase, Func<Task>, TimeSpan, TimeSpan) |
Создает таймер зерна. |
RegisterGrainTimer<TState>(IGrainBase, Func<TState,CancellationToken,Task>, TState, GrainTimerCreationOptions) |
Создает таймер зерна. |
RegisterGrainTimer<TState>(IGrainBase, Func<TState,CancellationToken,Task>, TState, TimeSpan, TimeSpan) |
Создает таймер зерна. |
RegisterGrainTimer<TState>(IGrainBase, Func<TState,Task>, TState, GrainTimerCreationOptions) |
Абстрактный базовый класс для всех классов зерна. |
RegisterGrainTimer<TState>(IGrainBase, Func<TState,Task>, TState, TimeSpan, TimeSpan) |
Создает таймер зерна. |
AsReference(IAddressable, Type) |
Возвращает типизированные ссылки на предоставленное зерно. |
AsReference<TGrainInterface>(IAddressable) |
Возвращает типизированные ссылки на предоставленное зерно. |
BindGrainReference(IAddressable, IGrainFactory) |
Привязывает ссылку на зерно к предоставленному IGrainFactory. |
Cast(IAddressable, Type) |
Возвращает типизированные ссылки на предоставленное зерно. |
Cast<TGrainInterface>(IAddressable) |
Возвращает типизированные ссылки на предоставленное зерно. |
GetGrainId(IAddressable) |
Возвращает идентификатор зерна, соответствующий предоставленному зерне. |
GetPrimaryKey(IAddressable) |
Возвращает Guid представление первичного ключа зерна. |
GetPrimaryKey(IAddressable, String) |
Возвращает Guid представление первичного ключа зерна. |
GetPrimaryKeyLong(IAddressable) |
Возвращает |
GetPrimaryKeyLong(IAddressable, String) |
Возвращает |
GetPrimaryKeyString(IAddressable) |
Возвращает первичный ключ |
IsPrimaryKeyBasedOnLong(IAddressable) |
Возвращает, является ли часть первичного ключа типом |
GetReminder(Grain, String) |
Возвращает ранее зарегистрированное напоминание. |
GetReminder(IGrainBase, String) |
Возвращает ранее зарегистрированное напоминание. |
GetReminders(Grain) |
Возвращает список всех напоминаний, зарегистрированных зерном. |
GetReminders(IGrainBase) |
Возвращает список всех напоминаний, зарегистрированных зерном. |
RegisterOrUpdateReminder(Grain, String, TimeSpan, TimeSpan) |
Регистрирует постоянное, надежное напоминание для отправки регулярных уведомлений (напоминаний) на зерно.
Зерно должно реализовать интерфейс |
RegisterOrUpdateReminder(IGrainBase, String, TimeSpan, TimeSpan) |
Регистрирует постоянное, надежное напоминание для отправки регулярных уведомлений (напоминаний) на зерно.
Зерно должно реализовать интерфейс |
UnregisterReminder(Grain, IGrainReminder) |
Отменяет регистрацию ранее зарегистрированного напоминания. |
UnregisterReminder(IGrainBase, IGrainReminder) |
Отменяет регистрацию ранее зарегистрированного напоминания. |
GetStreamProvider(Grain, String) |
Возвращает поставщик потоков с указанным |
GetStreamProvider(IGrainBase, String) |
Возвращает поставщик потоков с указанным |
GetLogger(Grain) |
Возвращает объект средства ведения журнала, который код этого зерна может использовать для трассировки. Имя средства ведения журнала будет производным от имени класса зерна. |
GetLogger(Grain, String) |
Возвращает объект средства ведения журнала, который код этого зерна может использовать для трассировки. |
GetGrainStorage(Grain, IServiceProvider) |
Получение поставщика хранилища, связанного с типом зерна. |