RxSwift文檔翻譯9 - Debugging Operators

前言

本文主要介紹一些調(diào)試相關(guān)的操作

  • **debug **
    會(huì)打印所有的訂閱,時(shí)間 和 disposals
example("debug") {
    let disposeBag = DisposeBag()
    var count = 1
    
    let sequenceThatErrors = Observable<String>.create { observer in
        observer.onNext("??")
        observer.onNext("??")
        observer.onNext("??")
        
        if count < 5 {
            observer.onError(TestError.test)
            print("Error encountered")
            count += 1
        }
        
        observer.onNext("??")
        observer.onNext("??")
        observer.onNext("??")
        observer.onCompleted()
        
        return Disposables.create()
    }
    
    sequenceThatErrors
        .retry(3)
        .debug()
        .subscribe(onNext: { print($0) })
        .disposed(by: disposeBag)
}

// 控制臺(tái)打印的結(jié)果:
--- debug example ---
2017-06-02 15:20:10.104: ViewController.swift:64 (viewDidLoad()) -> subscribed
2017-06-02 15:20:10.112: ViewController.swift:64 (viewDidLoad()) -> Event next(??)
??
2017-06-02 15:20:10.112: ViewController.swift:64 (viewDidLoad()) -> Event next(??)
??
2017-06-02 15:20:10.113: ViewController.swift:64 (viewDidLoad()) -> Event next(??)
??
Error encountered
2017-06-02 15:20:10.115: ViewController.swift:64 (viewDidLoad()) -> Event next(??)
??
2017-06-02 15:20:10.115: ViewController.swift:64 (viewDidLoad()) -> Event next(??)
??
2017-06-02 15:20:10.115: ViewController.swift:64 (viewDidLoad()) -> Event next(??)
??
Error encountered
2017-06-02 15:20:10.115: ViewController.swift:64 (viewDidLoad()) -> Event next(??)
??
2017-06-02 15:20:10.116: ViewController.swift:64 (viewDidLoad()) -> Event next(??)
??
2017-06-02 15:20:10.116: ViewController.swift:64 (viewDidLoad()) -> Event next(??)
??
Error encountered
2017-06-02 15:20:10.120: ViewController.swift:64 (viewDidLoad()) -> Event error(test)
2017-06-02 15:20:10.120: ViewController.swift:64 (viewDidLoad()) -> isDisposed
  • RxSwift.Resources.total
    提供所有Rx資源分配的計(jì)數(shù)啥刻,用于開(kāi)發(fā)期間檢測(cè)泄漏
    ** 默認(rèn)使用RxSwift.Resources.total會(huì)報(bào)錯(cuò),需要修改pod文件巍沙,修改完畢之后重新pod ,然后編譯就可以了**
target 'AppTarget' do
pod 'RxSwift'
end

post_install do |installer|
    installer.pods_project.targets.each do |target|
        if target.name == 'RxSwift'
            target.build_configurations.each do |config|
                if config.name == 'Debug'
                    config.build_settings['OTHER_SWIFT_FLAGS'] ||= ['-D', 'TRACE_RESOURCES']
                end
            end
        end
    end
end

事例程序

example("RxSwift.Resources.total") {
    print(RxSwift.Resources.total)
    
    let disposeBag = DisposeBag()
    
    print(RxSwift.Resources.total)
    
    let variable = Variable("??")
    
    let subscription1 = variable.asObservable().subscribe(onNext: { print($0) })
    
    print(RxSwift.Resources.total)
    
    let subscription2 = variable.asObservable().subscribe(onNext: { print($0) })
    
    print(RxSwift.Resources.total)
    
    subscription1.dispose()
    
    print(RxSwift.Resources.total)
    
    subscription2.dispose()
    
    print(RxSwift.Resources.total)
}
  
// 控制臺(tái)打印的結(jié)果:
--- RxSwift.Resources.total example ---
0
2
??
8
??
10
9
8
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市枝冀,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖愕够,帶你破解...
    沈念sama閱讀 222,865評(píng)論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件走贪,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡链烈,警方通過(guò)查閱死者的電腦和手機(jī)厉斟,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,296評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)强衡,“玉大人擦秽,你說(shuō)我怎么就攤上這事′銮冢” “怎么了感挥?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,631評(píng)論 0 364
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)越败。 經(jīng)常有香客問(wèn)我触幼,道長(zhǎng),這世上最難降的妖魔是什么究飞? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 60,199評(píng)論 1 300
  • 正文 為了忘掉前任置谦,我火速辦了婚禮,結(jié)果婚禮上亿傅,老公的妹妹穿的比我還像新娘媒峡。我一直安慰自己,他們只是感情好葵擎,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,196評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布谅阿。 她就那樣靜靜地躺著,像睡著了一般酬滤。 火紅的嫁衣襯著肌膚如雪签餐。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,793評(píng)論 1 314
  • 那天盯串,我揣著相機(jī)與錄音氯檐,去河邊找鬼。 笑死体捏,一個(gè)胖子當(dāng)著我的面吹牛冠摄,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播译打,決...
    沈念sama閱讀 41,221評(píng)論 3 423
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼耗拓,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了奏司?” 一聲冷哼從身側(cè)響起乔询,我...
    開(kāi)封第一講書(shū)人閱讀 40,174評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎韵洋,沒(méi)想到半個(gè)月后竿刁,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體黄锤,經(jīng)...
    沈念sama閱讀 46,699評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,770評(píng)論 3 343
  • 正文 我和宋清朗相戀三年食拜,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了鸵熟。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,918評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡负甸,死狀恐怖流强,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情呻待,我是刑警寧澤打月,帶...
    沈念sama閱讀 36,573評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站蚕捉,受9級(jí)特大地震影響奏篙,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜迫淹,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,255評(píng)論 3 336
  • 文/蒙蒙 一秘通、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧敛熬,春花似錦肺稀、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,749評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)炸茧。三九已至瑞妇,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間梭冠,已是汗流浹背辕狰。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,862評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留控漠,地道東北人蔓倍。 一個(gè)月前我還...
    沈念sama閱讀 49,364評(píng)論 3 379
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像盐捷,于是被迫代替她去往敵國(guó)和親偶翅。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,926評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 前言 看了前幾篇關(guān)于RxSwift主要概念的文章碉渡,會(huì)對(duì)RxSwift有個(gè)大致的了解聚谁,這篇文章會(huì)詳細(xì)講述如何使用Rx...
    最Fly的Engine人閱讀 13,047評(píng)論 3 40
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)滞诺,斷路器形导,智...
    卡卡羅2017閱讀 134,719評(píng)論 18 139
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,336評(píng)論 25 707
  • 1 大腦 brain cerebrum cerebrum是專(zhuān)業(yè)的醫(yī)學(xué)術(shù)語(yǔ)环疼,特指解剖學(xué)里的大腦。 2 古皮質(zhì) arc...
    金石明鏡閱讀 6,012評(píng)論 0 1
  • 這個(gè)世界上朵耕,真的有一見(jiàn)鐘情呢§帕ィ現(xiàn)在還清楚的記得第一次見(jiàn)你的樣子,馬尾辮阎曹,藍(lán)棉襖伪阶,黑色長(zhǎng)褲與雪地靴。第一次見(jiàn)你內(nèi)心就...
    我再也不會(huì)對(duì)你有秘密閱讀 144評(píng)論 0 1