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


Barrier.SignalAndWait Метод

Определение

Сообщает, что участник достиг барьера и ожидает достижения барьера другими участниками.

Перегрузки

SignalAndWait()

Сообщает, что участник достиг барьера и ожидает достижения барьера другими участниками.

SignalAndWait(Int32)

Сообщает, что участник достиг барьера и ожидает достижения барьера всеми другими участниками, используя 32-разрядное знаковое целое число для измерения времени ожидания.

SignalAndWait(CancellationToken)

Сообщает, что участник достиг барьера и ожидает достижения барьера всеми другими участниками. Кроме того, метод контролирует токен отмены.

SignalAndWait(TimeSpan)

Сообщает, что участник достиг барьера и ожидает достижения барьера всеми другими участниками, используя объект TimeSpan для измерения интервала времени.

SignalAndWait(Int32, CancellationToken)

Сообщает, что участник достиг барьера и ожидает достижения барьера всеми другими участниками, используя 32-разрядное знаковое целое число для измерения времени ожидания. Кроме того, метод контролирует токен отмены.

SignalAndWait(TimeSpan, CancellationToken)

Сообщает, что участник достиг барьера и ожидает достижения барьера всеми другими участниками, используя объект TimeSpan для измерения интервала времени. Кроме того, метод контролирует токен отмены.

SignalAndWait()

Исходный код:
Barrier.cs
Исходный код:
Barrier.cs
Исходный код:
Barrier.cs

Сообщает, что участник достиг барьера и ожидает достижения барьера другими участниками.

public:
 void SignalAndWait();
public void SignalAndWait ();
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public void SignalAndWait ();
member this.SignalAndWait : unit -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.SignalAndWait : unit -> unit
Public Sub SignalAndWait ()
Атрибуты

Исключения

Текущий экземпляр уже удален.

Метод был вызван из действия после этапа, барьер в настоящий момент имеет 0 участников или барьер получает сигналы от большего числа потоков, чем зарегистрировано участников.

Если создается исключение из действия следующего этапа барьера после того, как все участвующие потоки вызвали SignalAndWait, исключение будет вставлено в BarrierPostPhaseException и создано для всех участвующих потоков.

См. также раздел

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

SignalAndWait(Int32)

Исходный код:
Barrier.cs
Исходный код:
Barrier.cs
Исходный код:
Barrier.cs

Сообщает, что участник достиг барьера и ожидает достижения барьера всеми другими участниками, используя 32-разрядное знаковое целое число для измерения времени ожидания.

public:
 bool SignalAndWait(int millisecondsTimeout);
public bool SignalAndWait (int millisecondsTimeout);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public bool SignalAndWait (int millisecondsTimeout);
member this.SignalAndWait : int -> bool
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.SignalAndWait : int -> bool
Public Function SignalAndWait (millisecondsTimeout As Integer) As Boolean

Параметры

millisecondsTimeout
Int32

Время ожидания в миллисекундах или Infinite (-1) для неограниченного времени ожидания.

Возвращаемое значение

Значение true, если все участники достигли барьера за указанное время; в противном случае значение false.

Атрибуты

Исключения

Текущий экземпляр уже удален.

Параметр millisecondsTimeout является отрицательным числом, отличным от –1, что означает бесконечное время ожидания.

Метод был вызван из действия после этапа, барьер в настоящий момент имеет 0 участников или барьер получает сигналы от большего числа потоков, чем зарегистрировано участников.

Если создается исключение из действия следующего этапа барьера после того, как все участвующие потоки вызвали SignalAndWait, исключение будет вставлено в BarrierPostPhaseException и создано для всех участвующих потоков.

См. также раздел

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

SignalAndWait(CancellationToken)

Исходный код:
Barrier.cs
Исходный код:
Barrier.cs
Исходный код:
Barrier.cs

Сообщает, что участник достиг барьера и ожидает достижения барьера всеми другими участниками. Кроме того, метод контролирует токен отмены.

public:
 void SignalAndWait(System::Threading::CancellationToken cancellationToken);
public void SignalAndWait (System.Threading.CancellationToken cancellationToken);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public void SignalAndWait (System.Threading.CancellationToken cancellationToken);
member this.SignalAndWait : System.Threading.CancellationToken -> unit
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.SignalAndWait : System.Threading.CancellationToken -> unit
Public Sub SignalAndWait (cancellationToken As CancellationToken)

Параметры

cancellationToken
CancellationToken

Токен отмены CancellationToken, который следует контролировать.

Атрибуты

Исключения

cancellationToken был отменен.

Текущий экземпляр уже удален.

Метод был вызван из действия после этапа, барьер в настоящий момент имеет 0 участников или барьер получает сигналы от большего числа потоков, чем зарегистрировано участников.

См. также раздел

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

SignalAndWait(TimeSpan)

Исходный код:
Barrier.cs
Исходный код:
Barrier.cs
Исходный код:
Barrier.cs

Сообщает, что участник достиг барьера и ожидает достижения барьера всеми другими участниками, используя объект TimeSpan для измерения интервала времени.

public:
 bool SignalAndWait(TimeSpan timeout);
public bool SignalAndWait (TimeSpan timeout);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public bool SignalAndWait (TimeSpan timeout);
member this.SignalAndWait : TimeSpan -> bool
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.SignalAndWait : TimeSpan -> bool
Public Function SignalAndWait (timeout As TimeSpan) As Boolean

Параметры

timeout
TimeSpan

Период TimeSpan, представляющий время ожидания в миллисекундах, или период TimeSpan, представляющий -1 миллисекунду для неограниченного ожидания.

Возвращаемое значение

Значение true, если все остальные участники достигли барьера; в противном случае значение false.

Атрибуты

Исключения

Текущий экземпляр уже удален.

timeout является отрицательным числом, отличным от значения –1 миллисекунды, которое представляет неограниченное время ожидания, или превышает 32 767.

Метод был вызван из действия после этапа, барьер в настоящий момент имеет 0 участников или барьер получает сигналы от большего числа потоков, чем зарегистрировано участников.

См. также раздел

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

SignalAndWait(Int32, CancellationToken)

Исходный код:
Barrier.cs
Исходный код:
Barrier.cs
Исходный код:
Barrier.cs

Сообщает, что участник достиг барьера и ожидает достижения барьера всеми другими участниками, используя 32-разрядное знаковое целое число для измерения времени ожидания. Кроме того, метод контролирует токен отмены.

public:
 bool SignalAndWait(int millisecondsTimeout, System::Threading::CancellationToken cancellationToken);
public bool SignalAndWait (int millisecondsTimeout, System.Threading.CancellationToken cancellationToken);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public bool SignalAndWait (int millisecondsTimeout, System.Threading.CancellationToken cancellationToken);
member this.SignalAndWait : int * System.Threading.CancellationToken -> bool
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.SignalAndWait : int * System.Threading.CancellationToken -> bool
Public Function SignalAndWait (millisecondsTimeout As Integer, cancellationToken As CancellationToken) As Boolean

Параметры

millisecondsTimeout
Int32

Время ожидания в миллисекундах или Infinite (-1) для неограниченного времени ожидания.

cancellationToken
CancellationToken

Токен отмены CancellationToken, который следует контролировать.

Возвращаемое значение

true значение , если все участники достигли барьера в течение указанного времени; в противном случае — false.

Атрибуты

Исключения

cancellationToken был отменен.

Текущий экземпляр уже удален.

Параметр millisecondsTimeout является отрицательным числом, отличным от –1, что означает бесконечное время ожидания.

Метод был вызван из действия после этапа, барьер в настоящий момент имеет 0 участников или барьер получает сигналы от большего числа потоков, чем зарегистрировано участников.

Комментарии

cancellationToken Если значение было отменено до того, как сигнал вступил в силу, возникает OperationCanceledException исключение , а ParticipantsRemaining значение не уменьшается. cancellationToken Если значение не отменено или отменено после того, как сигнал вступает в силу, то ParticipantsRemaining он уменьшается и не OperationCanceledException возникает.

См. также раздел

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

SignalAndWait(TimeSpan, CancellationToken)

Исходный код:
Barrier.cs
Исходный код:
Barrier.cs
Исходный код:
Barrier.cs

Сообщает, что участник достиг барьера и ожидает достижения барьера всеми другими участниками, используя объект TimeSpan для измерения интервала времени. Кроме того, метод контролирует токен отмены.

public:
 bool SignalAndWait(TimeSpan timeout, System::Threading::CancellationToken cancellationToken);
public bool SignalAndWait (TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public bool SignalAndWait (TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
member this.SignalAndWait : TimeSpan * System.Threading.CancellationToken -> bool
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
member this.SignalAndWait : TimeSpan * System.Threading.CancellationToken -> bool
Public Function SignalAndWait (timeout As TimeSpan, cancellationToken As CancellationToken) As Boolean

Параметры

timeout
TimeSpan

Период TimeSpan, представляющий время ожидания в миллисекундах, или период TimeSpan, представляющий -1 миллисекунду для неограниченного ожидания.

cancellationToken
CancellationToken

Токен отмены CancellationToken, который следует контролировать.

Возвращаемое значение

Значение true, если все остальные участники достигли барьера; в противном случае значение false.

Атрибуты

Исключения

cancellationToken был отменен.

Текущий экземпляр уже удален.

timeout является отрицательным числом, отличным от -1 миллисекунды, которое представляет неограниченное время ожидания.

Метод был вызван из действия после этапа, барьер в настоящий момент имеет 0 участников или барьер получает сигналы от большего числа потоков, чем зарегистрировано участников.

См. также раздел

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