Partager via


Observable.Synchronize<TSource> , méthode (IObservable<TSource>)

Synchronise la séquence observable.

Espace de noms :System.Reactive.Linq
Assemblée: System.Reactive (en System.Reactive.dll)

Syntaxe

'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.

Paramètres de type

  • TSource
    Source de type.

Paramètres

Valeur de retour

Type : System.IObservable<TSource>
Séquence source dont les appels sortants aux observateurs sont synchronisés.

Remarque sur l'utilisation

En Visual Basic et C#, vous pouvez appeler cette méthode en tant que méthode instance sur n’importe quel objet de type IObservable<TSource>. Lorsque vous utilisez la syntaxe des méthodes d'instance pour appeler cette méthode, omettez le premier paramètre. Pour plus d'informations, consultez ou .

Notes

Cette méthode Synchronize retourne une séquence observable du type TSource qui synchronise les appels sortants vers les méthodes d’observateur (OnNext, OnCompletion, OnError). Pour ce faire, vous devez acquérir un verrou d’exclusion mutuelle pour un objet gate . Une autre surcharge de la méthode Synchronize vous permet de fournir votre propre objet gate : (Synchronize<TSource>(IObservable<TSource>, Object).

Cette surcharge de la méthode Synchronize crée un nouvel objet gate pour chaque abonnement.   Similaire à ce qui suit :

return Defer(() =>
{
  var gate = new object();
  return Synchronize(gate);
});

Voir aussi

Référence

Classe Observable

Synchroniser la surcharge

Espace de noms System.Reactive.Linq