サブスクライバーが更新される順序を確実にする方法はありますか?
ホットなオブザーバブルがあり、最初のサブスクライバーは変数を更新するために同期作業を行い、次のサブスクライバーはサービスを初期化する必要があります (一度だけ!)、その変数が確実に設定された後にのみ!
次のようになります。
import App from './App'
var appSource = App.init() // gets the hot observable
// our second subscriber
appSource.take(1).subscribe(() => {
// take 1 to only run this once
nextService.init()
})
次のようになりApp.init
ます。
...
init() {
var source = this.createObservable() // returns a hot interval observable that fetches a resource every few minutes
// first subscriber, updates the `myVar` every few minutes
source.subscribe((data) => this.myVar = data)
return source
}
...
これは現在機能していますが、常に100%注文に従うかどうかはわかりません.
編集:
私が聞いたように、サブスクライバーは FIFO で呼び出されます。そのため、順序はある程度保証されています。