Observable.Synchronize<TSource> Yöntemi (IObservable<TSource>)
Gözlemlenebilir diziyi eşitler.
Ad Alanı:System.Reactive.Linq
Derleme: System.Reactive (System.Reactive.dll içinde)
Syntax
'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.
Tür Parametreleri
- Tsource
Tür kaynağı.
Parametreler
- kaynak
Tür: System.IObservable<TSource>
Kaynak dizisi.
Dönüş Değeri
Tür: System.IObservable<TSource>
Gözlemcilere giden çağrıları eşitlenen kaynak dizisi.
Kullanım Notu
Visual Basic ve C# içinde bu yöntemi IObservable<TSource> türündeki herhangi bir nesnede örnek yöntemi olarak çağırabilirsiniz. Bu yöntemi çağırmak için örnek yöntemi sözdizimini kullandığınızda, ilk parametreyi yok sayın. Daha fazla bilgi için bkz. veya .
Açıklamalar
Bu Eşitleme yöntemi, gözlemci yöntemlerine giden çağrıları eşitleyen TSource türünde gözlemlenebilir bir sıra döndürür (OnNext, OnCompletion, OnError). Bu, bir kapı nesnesi için karşılıklı dışlama kilidi alarak gerçekleştirilir. Synchronize yönteminin başka bir aşırı yüklemesi de kendi ağ geçidi nesnenizi sağlamanıza olanak tanır: (Eşitleme<TSource>(IObservable<TSource>, Object).
Synchronize yönteminin bu aşırı yüklemesi, her abonelik için yeni bir geçit nesnesi oluşturur. Aşağıdakilere benzer:
return Defer(() =>
{
var gate = new object();
return Synchronize(gate);
});