私はRXSwiftの新機能ですが、単純な非同期の例を実装しようとしています。RXSwift単純な非同期の例ですか?
サブスクリプションは決して呼び出されません。
私が見逃していますか?
let disposeBag = DisposeBag()
Observable<Any>.create {
observer in
DispatchQueue.global(qos: .background).asyncAfter(deadline: .now() + 3) {
observer.onNext("done")
observer.onCompleted()
}
return Disposables.create()
}
.subscribe { print($0) }
.addDisposableTo(disposeBag)
================= UPDATE ======================
私は以前の値を渡すことができる、より高度な、何かをしようとしていますが、その結果は期待できませんでした。何が恋しい?私が期待したもの
は、(1行わ)次
あった - (2行わ行わ1)
1行う(次
出力は次
ました - 完了2)
完了テッド
class AsyncObject { func asyncTest1() -> Observable<String> { return Observable<String>.create { (o: AnyObserver<String>) -> Disposable in DispatchQueue.main.asyncAfter(deadline: .now() + 3) { o.onNext("done 1") o.onCompleted() } return Disposables.create() } } func asycTset2(value: String) -> Observable<String> { return Observable<String>.create { (o: AnyObserver<String>) -> Disposable in DispatchQueue.main.asyncAfter(deadline: .now() + 1) { o.onNext("\(value) - done 2") o.onCompleted() } return Disposables.create() } } } class ViewController: UIViewController { let disposeBag = DisposeBag() let observer = AsyncObject() // MARK: Init Methods override func viewDidLoad() { super.viewDidLoad() self.observer.asyncTest1() .flatMap { self.observer.asycTset2(value: $0) } .subscribe { print($0) } .addDisposableTo(disposeBag) } }
クールで素晴らしい!それは私が欲しいものです! – PatrickSCLin
どう違うのですか test1.concat(test2).subscribe {print($ 0)} .addDisposableTo(disposeBag) – PatrickSCLin
とどちらが良いですか? – PatrickSCLin