1
iOSアプリケーションのバックグラウンドスレッドで重労働をして、実行中にUIをフリーズさせたくありません。私は何をしようとすると、次のとおりです。RxSwift - UIをフリーズしないバックグラウンドタスク
self.someDisposable = heavyLiftingFuncReturningObservable()
.subscribeOn(ConcurrentDispatchQueueScheduler(qos: .background))
.observeOn(MainScheduler.instance)
.subscribe(
onNext: { [weak self] image in
// update UI
},
onError: { ... }
)
がなぜ期待通り以上が動作しませんし、それを動作させるためにどのように?
Observable 'lazy'が助けになると思います。 '.background'キューから必要になったときに実際に呼び出され、定義されていないときには実際に呼び出されるようになります。 –
残念ながら、UIはとにかくフリーズします。 – dobranoc