Appearance
Unicast VS Mulitcast ?
Un "observable unicast" est un observable qui ne peut être partagé qu'avec un seul observateur. Cela signifie que chaque fois qu'un observateur souhaite s'inscrire à l'observable, une nouvelle instance de l'observable doit être créée.
Un "observable multicast" est un observable qui peut être partagé avec plusieurs observateurs. Cela signifie que plusieurs observateurs peuvent s'inscrire à l'observable sans avoir à recréer l'observable à chaque fois.
Voici comment utiliser un observable unicast et un observable multicast :
js
import { interval, Subject } from 'rxjs'
// Unicast observable
const source = interval(1000);
const observer1 = source.subscribe(x => console.log('Observer 1: ' + x));
const observer2 = source.subscribe(x => console.log('Observer 2: ' + x));
// Multicast observable
const subject = new Subject();
const observer3 = subject.subscribe(x => console.log('Observer 3: ' + x));
const observer4 = subject.subscribe(x => console.log('Observer 4: ' + x));
Dans cet exemple, l'observable source
est un observable qui produit une valeur toutes les secondes. L'observable source
est un observable unicast, donc chaque fois qu'un observateur souhaite s'inscrire à l'observable, une nouvelle instance de l'observable doit être créée. Dans cet exemple, les observateurs 1 et 2 sont des instances distinctes de l'observable source
.
Le multicast observable subject
est un "Subject", qui est un type d'observable qui peut stocker des observateurs inscrits et les informer de toutes les valeurs produites par la source observable.