AsyncQueue<T>.Completion Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает задачу, которая переходит в завершенное состояние при Complete() вызове, а очередь пуста.
public:
property System::Threading::Tasks::Task ^ Completion { System::Threading::Tasks::Task ^ get(); };
public System.Threading.Tasks.Task Completion { get; }
member this.Completion : System.Threading.Tasks.Task
Public ReadOnly Property Completion As Task
Значение свойства
Возвращает Task.
Комментарии
Это свойство является переменным, чтобы предотвратить переупорядочение команд ЦП вокруг назначения (или чтения) этого поля. Это позволяет шаблону проверки блокировки проверки в этом свойстве быть надежным, если один поток в блоке инициализирует значение и назначает поле, а модель слабой памяти позволяет назначать ее перед инициализацией. Другой поток за пределами блокировки может наблюдать ненулевое поле и начать доступ к свойству Task до его инициализации.