Поделиться через


Immutable<T> Структура

Определение

Класс-оболочка для переноса неизменяемых данных.

public struct Immutable<T>
[Orleans.GenerateSerializer]
[Orleans.Immutable]
public readonly struct Immutable<T>
type Immutable<'T> = struct
[<Orleans.GenerateSerializer>]
[<Orleans.Immutable>]
type Immutable<'T> = struct
Public Structure Immutable(Of T)

Параметры типа

T

Тип данных, которые необходимо упаковать в неизменяемый

Наследование
Immutable<T>
Атрибуты

Комментарии

Объекты, которые известны как неизменяемые, получают специальную быструю обработку сериализатором Orleans, что в двух словах позволяет пропускать шаг DeepCopy во время отправки сообщений, где отправитель и получатель находятся в одном хранилище.

Один из очень распространенных шаблонов использования неизменяемых объектов — передача параметров byte[] в объект grain. Если программе известно, что она не изменит содержимое байта[] (например, если он содержит байты из статического файла изображения, считываемого с диска), то значительную экономию в использовании памяти и пропускной способности сообщений можно получить, пометив этот аргумент byte[] как Immutable.

Конструкторы

Immutable<T>(T)

Конструктор для переноса указанного объекта данных в новую неизменяемую оболочку.

Поля

Value

Возвращает ссылку на исходное значение, хранящееся в этой неизменяемой оболочке.

Свойства

Value

Возвращает ссылку на исходное значение, хранящееся в этой неизменяемой оболочке.

Применяется к