package Ġcom . zh ao . and roi dex plo re . rx java Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġcom . trello . rx lifecycle 3 . android . lifecycle . kotlin . bind To Lifecycle Ċ import Ġcom . zh ao . and roi dex plo re . R Ċ import Ġcom . zh ao . and roi dex plo re . rx java . misc . click s Ċ import Ġcom . zh ao . and roi dex plo re . utils . FF Log Ċ import Ġio . reactivex . Observable Ċ import Ġio . reactivex . Observer Ċ import Ġio . reactivex . android . schedul ers . Android Schedulers Ċ import Ġio . reactivex . dis pos ables . Disposable Ċ import Ġio . reactivex . schedul ers . Schedulers Ċ import Ġkotlinx . android . synt hetic . main . fragment _ rx _ other . other Click Btn Ċ import Ġjava . util . concurrent . TimeUnit . MILLISECONDS Ċ import Ġkotlin . concurrent . thread Ċ Ċ class ĠOther Fragment Ġ: ĠFragment () Ġ{ ĊĊĠĠĠ Ġval ĠTAG Ġ= Ġ" Other Fragment " ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠLayoutInflater . from ( context ). inflate ( R . layout . fragment _ rx _ other , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġinit Click () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress Lint (" Check Result ") ĊĠĠĠ Ġfun Ġinit Click () Ġ{ ĊĠĠĠĠĠĠĠ Ġother Click Btn . click s () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. bind To Lifecycle ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ/** è¿Ļä¸ª æĹ¶éĹ´ çªĹåı£ åĨħ çļĦ çĤ¹åĩ» åıªæľī ç¬¬ ä¸Ģæ¬¡ ä¼ļ æİ¨ éĢģ */ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. throttle First ( 8 0 0 , ĠMIL LI SECONDS ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinvoke Test () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthread Switch () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress Lint (" Check Result ") ĊĠĠĠ Ġfun Ġinvoke Test () Ġ{ ĊĠĠĠĠĠĠĠ ĠObservable . create < Any ?> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onNext ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . onComplete () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ( object Ġ: ĠObserver < Any > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Subscribe ( d : ĠDis posable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFF Log . d ( TAG , Ġ" on Subscribe ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonError ( e : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFF Log . d ( TAG , Ġ" onError ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonComplete () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFF Log . d ( TAG , Ġ" onComplete ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Next ( t : ĠAny ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFF Log . d ( TAG , Ġ" onNext ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ çº¿ç¨ĭ åĪĩæį¢ æµĭè¯ķ ï¼Į è°ĥ åº¦ åĻ¨ éĩĮ è°ĥçĶ¨ æĸ° çº¿ç¨ĭ ãĢĤ å°± åĥı éĹŃ åĮħ ä¸Ģæł· ï¼Į å¦Ĥæŀľ åľ¨ åĪ« çļĦ çº¿ç¨ĭ åıĳ å°Ħ æķ°æį® ï¼Į subscribe On Ġ å¹¶ ä¸į èµ· ä½ľçĶ¨ ï¼Į ĊĠĠĠĠ Ġ* Ġæķ°æį® æµģ è¿ĺæĺ¯ è¿Ĳè¡Į emitter Ġ æīĢåľ¨ çļĦ çº¿ç¨ĭ ï¼Į çĽ´ åĪ° éģĩ åĪ° observe On Ġ åĪĩæį¢ çº¿ç¨ĭ ãĢĤ ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ è¿Ĳè¡Į ç»ĵæŀľ ï¼ļ ĊĠĠĠ ĠD / Rx MainActivity : Ġ çº¿ç¨ĭ = Rx Cached Thread Scheduler - 1 : Ġ Ġfilter = 1 0 0 ĊĠĠĠ ĠD / Rx MainActivity : Ġ çº¿ç¨ĭ = Rx New Thread Scheduler - 1 : Ġ Ġmap = 1 0 0 ĊĠĠĠ ĠD / Rx MainActivity : Ġ çº¿ç¨ĭ = èĩªå®ļä¹ī çº¿ç¨ĭ : Ġ Ġfilter = 2 0 0 ĊĠĠĠ ĠD / Rx MainActivity : Ġ çº¿ç¨ĭ = Rx New Thread Scheduler - 1 : Ġ Ġmap = 2 0 0 ĊĠĠĠ ĠD / Rx MainActivity : Ġ çº¿ç¨ĭ = main : Ġ Ġon Next = 1 0 0 ĊĠĠĠ ĠD / Rx MainActivity : Ġ çº¿ç¨ĭ = main : Ġ Ġon Next = 2 0 0 ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Suppress Lint (" Check Result ") ĊĠĠĠ Ġfun Ġthread Switch () Ġ{ ĊĠĠĠĠĠĠĠ ĠObservable . create < Int > Ġ{ Ġemitter Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġemitter . onNext ( 1 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthread ( name Ġ= Ġ" èĩªå®ļä¹ī çº¿ç¨ĭ ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġemitter . onNext ( 2 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFF Log . d ( TAG , Ġ" filter =$ it ", Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Schedulers . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Schedulers . new Thread ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFF Log . d ( TAG , Ġ" map =$ it ", Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Android Schedulers . main Thread ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFF Log . d ( TAG , Ġ" onNext =$ it ", Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }