Método TSource Observable.Synchronize<(TSource> IObservable<)>
Sincroniza a sequência observável.
Namespace:System.Reactive.Linq
Assembly: System.Reactive (em System.Reactive.dll)
Sintaxe
'Declaration
<ExtensionAttribute> _
Public Shared Function Synchronize(Of TSource) ( _
source As IObservable(Of TSource) _
) As IObservable(Of TSource)
'Usage
Dim source As IObservable(Of TSource)
Dim returnValue As IObservable(Of TSource)
returnValue = source.Synchronize()
public static IObservable<TSource> Synchronize<TSource>(
this IObservable<TSource> source
)
[ExtensionAttribute]
public:
generic<typename TSource>
static IObservable<TSource>^ Synchronize(
IObservable<TSource>^ source
)
static member Synchronize :
source:IObservable<'TSource> -> IObservable<'TSource>
JScript does not support generic types and methods.
Parâmetros de tipo
- TSource
A origem do tipo.
Parâmetros
- source
Tipo: System.IObservable<TSource>
A sequência de origem.
Valor Retornado
Tipo: System.IObservable<TSource>
A sequência de origem cujas chamadas de saída para observadores são sincronizadas.
Observação de uso
No Visual Basic e no C#, você pode chamar esse método como um método de instância em qualquer objeto do tipo TSource>IObservable<. Quando você usar a sintaxe de método de instância para chamar esse método, omita o primeiro parâmetro. Para obter mais informações, consulte ou .
Comentários
Esse método Synchronize retorna uma sequência observável do tipo TSource que sincroniza chamadas de saída para os métodos de observador (OnNext, OnCompletion, OnError). Isso é feito adquirindo um bloqueio de exclusão mútua para um objeto gate . Outra sobrecarga do método Synchronize permite que você forneça seu próprio objeto gate: (Synchronize<TSource>(IObservable<TSource>, Object).
Essa sobrecarga do método Synchronize criará um novo objeto gate para cada assinatura. Semelhante ao seguinte:
return Defer(() =>
{
var gate = new object();
return Synchronize(gate);
});