RxJava 학습회 Week3
Schedulers
Schedulers
안녕히 계십시오.
SubscribeOn()
ObserveOn()
화상도
기본 작업
샘플 0: 코드
아무것도 정하지 않고 subscribe를 실행합니다.
샘플 0: 실행 결과 subscribe: main
map1-1: main
map2-1: main
map3-1: main
onNext-1: main
map1-2: main
map2-2: main
map3-2: main
onNext-2: main
map1-3: main
map2-3: main
map3-3: main
onNext-3: main
샘플 1: 코드
백엔드 단서에서 샘플 실행 0
샘플 1: 실행 결과 subscribe: pool-1-thread-1
map1-1: pool-1-thread-1
map2-1: pool-1-thread-1
map3-1: pool-1-thread-1
onNext-1: pool-1-thread-1
map1-2: pool-1-thread-1
map2-2: pool-1-thread-1
map3-2: pool-1-thread-1
onNext-2: pool-1-thread-1
map1-3: pool-1-thread-1
map2-3: pool-1-thread-1
map3-3: pool-1-thread-1
onNext-3: pool-1-thread-1
newThread()
API 문서
각 처리 단위로 새 단서를 생성합니다.
샘플 2: 코드
SubscribeOn() 및 Observen()에서 newThread() 지정
샘플 2: 실행 결과 subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-3
map2-2: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-3
map3-1: RxNewThreadScheduler-4
map3-2: RxNewThreadScheduler-4
map3-3: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-5
onNext: RxNewThreadScheduler-5
onNext: RxNewThreadScheduler-5
샘플 3: 코드
중간 Observen () 을 뽑아 보십시오.
샘플 3: 실행 결과 subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map2-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map3-1: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-2
map3-2: RxNewThreadScheduler-3
map3-3: RxNewThreadScheduler-3
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
computation()
API 문서
계산 처리에 사용된 Schduller를 반환합니다.이본트로, 호출 처리, 계산 처리에 사용할 수 있습니다.
입출력 제한 처리에는 사용하지 마십시오.그런 상황에서 IO를 쓰세요.
이루어지다
subscribe: main
map1-1: main
map2-1: main
map3-1: main
onNext-1: main
map1-2: main
map2-2: main
map3-2: main
onNext-2: main
map1-3: main
map2-3: main
map3-3: main
onNext-3: main
샘플 1: 코드
백엔드 단서에서 샘플 실행 0
샘플 1: 실행 결과 subscribe: pool-1-thread-1
map1-1: pool-1-thread-1
map2-1: pool-1-thread-1
map3-1: pool-1-thread-1
onNext-1: pool-1-thread-1
map1-2: pool-1-thread-1
map2-2: pool-1-thread-1
map3-2: pool-1-thread-1
onNext-2: pool-1-thread-1
map1-3: pool-1-thread-1
map2-3: pool-1-thread-1
map3-3: pool-1-thread-1
onNext-3: pool-1-thread-1
newThread()
API 문서
각 처리 단위로 새 단서를 생성합니다.
샘플 2: 코드
SubscribeOn() 및 Observen()에서 newThread() 지정
샘플 2: 실행 결과 subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-3
map2-2: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-3
map3-1: RxNewThreadScheduler-4
map3-2: RxNewThreadScheduler-4
map3-3: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-5
onNext: RxNewThreadScheduler-5
onNext: RxNewThreadScheduler-5
샘플 3: 코드
중간 Observen () 을 뽑아 보십시오.
샘플 3: 실행 결과 subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map2-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map3-1: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-2
map3-2: RxNewThreadScheduler-3
map3-3: RxNewThreadScheduler-3
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
computation()
API 문서
계산 처리에 사용된 Schduller를 반환합니다.이본트로, 호출 처리, 계산 처리에 사용할 수 있습니다.
입출력 제한 처리에는 사용하지 마십시오.그런 상황에서 IO를 쓰세요.
이루어지다
subscribe: pool-1-thread-1
map1-1: pool-1-thread-1
map2-1: pool-1-thread-1
map3-1: pool-1-thread-1
onNext-1: pool-1-thread-1
map1-2: pool-1-thread-1
map2-2: pool-1-thread-1
map3-2: pool-1-thread-1
onNext-2: pool-1-thread-1
map1-3: pool-1-thread-1
map2-3: pool-1-thread-1
map3-3: pool-1-thread-1
onNext-3: pool-1-thread-1
newThread()
API 문서
각 처리 단위로 새 단서를 생성합니다.
샘플 2: 코드
SubscribeOn() 및 Observen()에서 newThread() 지정
샘플 2: 실행 결과 subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-3
map2-2: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-3
map3-1: RxNewThreadScheduler-4
map3-2: RxNewThreadScheduler-4
map3-3: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-5
onNext: RxNewThreadScheduler-5
onNext: RxNewThreadScheduler-5
샘플 3: 코드
중간 Observen () 을 뽑아 보십시오.
샘플 3: 실행 결과 subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map2-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map3-1: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-2
map3-2: RxNewThreadScheduler-3
map3-3: RxNewThreadScheduler-3
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
computation()
API 문서
계산 처리에 사용된 Schduller를 반환합니다.이본트로, 호출 처리, 계산 처리에 사용할 수 있습니다.
입출력 제한 처리에는 사용하지 마십시오.그런 상황에서 IO를 쓰세요.
이루어지다
각 처리 단위로 새 단서를 생성합니다.
샘플 2: 코드
SubscribeOn() 및 Observen()에서 newThread() 지정
샘플 2: 실행 결과 subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-3
map2-2: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-3
map3-1: RxNewThreadScheduler-4
map3-2: RxNewThreadScheduler-4
map3-3: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-5
onNext: RxNewThreadScheduler-5
onNext: RxNewThreadScheduler-5
샘플 3: 코드
중간 Observen () 을 뽑아 보십시오.
샘플 3: 실행 결과 subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map2-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map3-1: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-2
map3-2: RxNewThreadScheduler-3
map3-3: RxNewThreadScheduler-3
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
computation()
API 문서
계산 처리에 사용된 Schduller를 반환합니다.이본트로, 호출 처리, 계산 처리에 사용할 수 있습니다.
입출력 제한 처리에는 사용하지 마십시오.그런 상황에서 IO를 쓰세요.
이루어지다
subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-3
map2-2: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-3
map3-1: RxNewThreadScheduler-4
map3-2: RxNewThreadScheduler-4
map3-3: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-5
onNext: RxNewThreadScheduler-5
onNext: RxNewThreadScheduler-5
샘플 3: 코드
중간 Observen () 을 뽑아 보십시오.
샘플 3: 실행 결과 subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map2-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map3-1: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-2
map3-2: RxNewThreadScheduler-3
map3-3: RxNewThreadScheduler-3
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
computation()
API 문서
계산 처리에 사용된 Schduller를 반환합니다.이본트로, 호출 처리, 계산 처리에 사용할 수 있습니다.
입출력 제한 처리에는 사용하지 마십시오.그런 상황에서 IO를 쓰세요.
이루어지다
subscribe: RxNewThreadScheduler-1
map1-1: RxNewThreadScheduler-2
map2-1: RxNewThreadScheduler-2
map1-2: RxNewThreadScheduler-2
map2-2: RxNewThreadScheduler-2
map1-3: RxNewThreadScheduler-2
map3-1: RxNewThreadScheduler-3
map2-3: RxNewThreadScheduler-2
map3-2: RxNewThreadScheduler-3
map3-3: RxNewThreadScheduler-3
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
onNext: RxNewThreadScheduler-4
computation()
API 문서
계산 처리에 사용된 Schduller를 반환합니다.이본트로, 호출 처리, 계산 처리에 사용할 수 있습니다.
입출력 제한 처리에는 사용하지 마십시오.그런 상황에서 IO를 쓰세요.
이루어지다
계산 처리에 사용된 Schduller를 반환합니다.이본트로, 호출 처리, 계산 처리에 사용할 수 있습니다.
입출력 제한 처리에는 사용하지 마십시오.그런 상황에서 IO를 쓰세요.
이루어지다
System.getProperty("rx2.computation-threads")
or Runtime.getRuntime().availableProcessors()
샘플 4: 코드
스레드 수를 2로 지정하고computation을 사용합니다
샘플 4: 실행 결과 subscribe: RxComputationThreadPool-1
map1-1: RxComputationThreadPool-2
map1-2: RxComputationThreadPool-2
map1-3: RxComputationThreadPool-2
map2-1: RxComputationThreadPool-1
map2-2: RxComputationThreadPool-1
map2-3: RxComputationThreadPool-1
map3-1: RxComputationThreadPool-2
map3-2: RxComputationThreadPool-2
onNext: RxComputationThreadPool-1
onNext: RxComputationThreadPool-1
map3-3: RxComputationThreadPool-2
onNext: RxComputationThreadPool-1
io()
API 문서
IO는 속박 처리에 사용되는 Scheduller입니다.필요할 때 스레드 수가 증가하는 스레드 탱크에서 실현된다.입출력 블록의 비동기 처리에 사용할 수 있습니다.
계산 처리에 사용하지 마세요.대신 computation()을 사용하십시오.
이루어지다
subscribe: RxComputationThreadPool-1
map1-1: RxComputationThreadPool-2
map1-2: RxComputationThreadPool-2
map1-3: RxComputationThreadPool-2
map2-1: RxComputationThreadPool-1
map2-2: RxComputationThreadPool-1
map2-3: RxComputationThreadPool-1
map3-1: RxComputationThreadPool-2
map3-2: RxComputationThreadPool-2
onNext: RxComputationThreadPool-1
onNext: RxComputationThreadPool-1
map3-3: RxComputationThreadPool-2
onNext: RxComputationThreadPool-1
io()
API 문서
IO는 속박 처리에 사용되는 Scheduller입니다.필요할 때 스레드 수가 증가하는 스레드 탱크에서 실현된다.입출력 블록의 비동기 처리에 사용할 수 있습니다.
계산 처리에 사용하지 마세요.대신 computation()을 사용하십시오.
이루어지다
IO는 속박 처리에 사용되는 Scheduller입니다.필요할 때 스레드 수가 증가하는 스레드 탱크에서 실현된다.입출력 블록의 비동기 처리에 사용할 수 있습니다.
계산 처리에 사용하지 마세요.대신 computation()을 사용하십시오.
이루어지다
샘플 5: 코드
io()를 사용하여 Observable을 두 번 실행합니다.
샘플 5: 실행 결과 subscribe: RxCachedThreadScheduler-1
map1-1: RxCachedThreadScheduler-2
map1-2: RxCachedThreadScheduler-2
map1-3: RxCachedThreadScheduler-2
map2-1: RxCachedThreadScheduler-3
map2-2: RxCachedThreadScheduler-3
map2-3: RxCachedThreadScheduler-3
map3-1: RxCachedThreadScheduler-4
map3-2: RxCachedThreadScheduler-4
map3-3: RxCachedThreadScheduler-4
onNext: RxCachedThreadScheduler-5
onNext: RxCachedThreadScheduler-5
onNext: RxCachedThreadScheduler-5
subscribe: RxCachedThreadScheduler-5
map1-1: RxCachedThreadScheduler-4
map1-2: RxCachedThreadScheduler-4
map2-1: RxCachedThreadScheduler-3
map1-3: RxCachedThreadScheduler-4
map2-2: RxCachedThreadScheduler-3
map3-1: RxCachedThreadScheduler-2
map2-3: RxCachedThreadScheduler-3
map3-2: RxCachedThreadScheduler-2
map3-3: RxCachedThreadScheduler-2
onNext: RxCachedThreadScheduler-1
onNext: RxCachedThreadScheduler-1
onNext: RxCachedThreadScheduler-1
=>재활용
computation() vs io()
computation() vs io()
각자 파산한 사례를 소개하다
subscribe: RxCachedThreadScheduler-1
map1-1: RxCachedThreadScheduler-2
map1-2: RxCachedThreadScheduler-2
map1-3: RxCachedThreadScheduler-2
map2-1: RxCachedThreadScheduler-3
map2-2: RxCachedThreadScheduler-3
map2-3: RxCachedThreadScheduler-3
map3-1: RxCachedThreadScheduler-4
map3-2: RxCachedThreadScheduler-4
map3-3: RxCachedThreadScheduler-4
onNext: RxCachedThreadScheduler-5
onNext: RxCachedThreadScheduler-5
onNext: RxCachedThreadScheduler-5
subscribe: RxCachedThreadScheduler-5
map1-1: RxCachedThreadScheduler-4
map1-2: RxCachedThreadScheduler-4
map2-1: RxCachedThreadScheduler-3
map1-3: RxCachedThreadScheduler-4
map2-2: RxCachedThreadScheduler-3
map3-1: RxCachedThreadScheduler-2
map2-3: RxCachedThreadScheduler-3
map3-2: RxCachedThreadScheduler-2
map3-3: RxCachedThreadScheduler-2
onNext: RxCachedThreadScheduler-1
onNext: RxCachedThreadScheduler-1
onNext: RxCachedThreadScheduler-1
=>재활용computation() vs io()
computation() vs io()
각자 파산한 사례를 소개하다
각자 파산한 사례를 소개하다
샘플 6: 코드
IO는computation()을 이용하여 네트워크 통신을 속박한다
샘플 6: 실행 결과 (実際に実行)
샘플 6 Fixed:코드
샘플 6의 IO() 사용
샘플 6 Fixed:결과 실행 (実際に実行)
샘플 7: 코드
CPU는 구속된 컴퓨팅 처리에서 io()를 사용합니다.
샘플 7: 실행 결과 (実際に実行)
샘플 7 Fixed:코드
샘플 7에서computation() 사용
샘플 7 Fixed:결과 실행 (実際に実行)
single()
API 문서
Scheduller 인스턴스가 관리하는 공유 백그라운드 스레드를 제공합니다.
샘플 8: 코드
single()의 Observable을 사용합니다.
샘플 8: 실행 결과 subscribe: RxSingleScheduler-1
map1-1: RxSingleScheduler-1
map1-2: RxSingleScheduler-1
map1-3: RxSingleScheduler-1
map2-1: RxSingleScheduler-1
map2-2: RxSingleScheduler-1
map2-3: RxSingleScheduler-1
map3-1: RxSingleScheduler-1
map3-2: RxSingleScheduler-1
map3-3: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
=> 정상 시간과는 다른 순서로 작동합니다.
trampoline()
API 문서
현재 처리가 끝난 후에 실행되는 단서에서 실행되는 단서를 제공합니다.
잘 모르겠어요.orz
(実際に実行)
샘플 6 Fixed:코드
샘플 6의 IO() 사용
샘플 6 Fixed:결과 실행 (実際に実行)
샘플 7: 코드
CPU는 구속된 컴퓨팅 처리에서 io()를 사용합니다.
샘플 7: 실행 결과 (実際に実行)
샘플 7 Fixed:코드
샘플 7에서computation() 사용
샘플 7 Fixed:결과 실행 (実際に実行)
single()
API 문서
Scheduller 인스턴스가 관리하는 공유 백그라운드 스레드를 제공합니다.
샘플 8: 코드
single()의 Observable을 사용합니다.
샘플 8: 실행 결과 subscribe: RxSingleScheduler-1
map1-1: RxSingleScheduler-1
map1-2: RxSingleScheduler-1
map1-3: RxSingleScheduler-1
map2-1: RxSingleScheduler-1
map2-2: RxSingleScheduler-1
map2-3: RxSingleScheduler-1
map3-1: RxSingleScheduler-1
map3-2: RxSingleScheduler-1
map3-3: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
=> 정상 시간과는 다른 순서로 작동합니다.
trampoline()
API 문서
현재 처리가 끝난 후에 실행되는 단서에서 실행되는 단서를 제공합니다.
잘 모르겠어요.orz
(実際に実行)
샘플 7: 코드
CPU는 구속된 컴퓨팅 처리에서 io()를 사용합니다.
샘플 7: 실행 결과 (実際に実行)
샘플 7 Fixed:코드
샘플 7에서computation() 사용
샘플 7 Fixed:결과 실행 (実際に実行)
single()
API 문서
Scheduller 인스턴스가 관리하는 공유 백그라운드 스레드를 제공합니다.
샘플 8: 코드
single()의 Observable을 사용합니다.
샘플 8: 실행 결과 subscribe: RxSingleScheduler-1
map1-1: RxSingleScheduler-1
map1-2: RxSingleScheduler-1
map1-3: RxSingleScheduler-1
map2-1: RxSingleScheduler-1
map2-2: RxSingleScheduler-1
map2-3: RxSingleScheduler-1
map3-1: RxSingleScheduler-1
map3-2: RxSingleScheduler-1
map3-3: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
=> 정상 시간과는 다른 순서로 작동합니다.
trampoline()
API 문서
현재 처리가 끝난 후에 실행되는 단서에서 실행되는 단서를 제공합니다.
잘 모르겠어요.orz
(実際に実行)
샘플 7 Fixed:코드
샘플 7에서computation() 사용
샘플 7 Fixed:결과 실행 (実際に実行)
single()
API 문서
Scheduller 인스턴스가 관리하는 공유 백그라운드 스레드를 제공합니다.
샘플 8: 코드
single()의 Observable을 사용합니다.
샘플 8: 실행 결과 subscribe: RxSingleScheduler-1
map1-1: RxSingleScheduler-1
map1-2: RxSingleScheduler-1
map1-3: RxSingleScheduler-1
map2-1: RxSingleScheduler-1
map2-2: RxSingleScheduler-1
map2-3: RxSingleScheduler-1
map3-1: RxSingleScheduler-1
map3-2: RxSingleScheduler-1
map3-3: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
=> 정상 시간과는 다른 순서로 작동합니다.
trampoline()
API 문서
현재 처리가 끝난 후에 실행되는 단서에서 실행되는 단서를 제공합니다.
잘 모르겠어요.orz
(実際に実行)
single()
API 문서
Scheduller 인스턴스가 관리하는 공유 백그라운드 스레드를 제공합니다.
샘플 8: 코드
single()의 Observable을 사용합니다.
샘플 8: 실행 결과 subscribe: RxSingleScheduler-1
map1-1: RxSingleScheduler-1
map1-2: RxSingleScheduler-1
map1-3: RxSingleScheduler-1
map2-1: RxSingleScheduler-1
map2-2: RxSingleScheduler-1
map2-3: RxSingleScheduler-1
map3-1: RxSingleScheduler-1
map3-2: RxSingleScheduler-1
map3-3: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
=> 정상 시간과는 다른 순서로 작동합니다.
trampoline()
API 문서
현재 처리가 끝난 후에 실행되는 단서에서 실행되는 단서를 제공합니다.
잘 모르겠어요.orz
Scheduller 인스턴스가 관리하는 공유 백그라운드 스레드를 제공합니다.
샘플 8: 코드
single()의 Observable을 사용합니다.
샘플 8: 실행 결과 subscribe: RxSingleScheduler-1
map1-1: RxSingleScheduler-1
map1-2: RxSingleScheduler-1
map1-3: RxSingleScheduler-1
map2-1: RxSingleScheduler-1
map2-2: RxSingleScheduler-1
map2-3: RxSingleScheduler-1
map3-1: RxSingleScheduler-1
map3-2: RxSingleScheduler-1
map3-3: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
=> 정상 시간과는 다른 순서로 작동합니다.
trampoline()
API 문서
현재 처리가 끝난 후에 실행되는 단서에서 실행되는 단서를 제공합니다.
잘 모르겠어요.orz
subscribe: RxSingleScheduler-1
map1-1: RxSingleScheduler-1
map1-2: RxSingleScheduler-1
map1-3: RxSingleScheduler-1
map2-1: RxSingleScheduler-1
map2-2: RxSingleScheduler-1
map2-3: RxSingleScheduler-1
map3-1: RxSingleScheduler-1
map3-2: RxSingleScheduler-1
map3-3: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
onNext: RxSingleScheduler-1
=> 정상 시간과는 다른 순서로 작동합니다.trampoline()
API 문서
현재 처리가 끝난 후에 실행되는 단서에서 실행되는 단서를 제공합니다.
잘 모르겠어요.orz
현재 처리가 끝난 후에 실행되는 단서에서 실행되는 단서를 제공합니다.
잘 모르겠어요.orz
참고 자료
https://medium.com/@I_Love_Coding/rxjava-schedulers-trampoline-use-cases-283f6649cbf#.q1xlqvoh5
http://qiita.com/amay077/items/89093d33cd4f32154a5f
샘플 9: 코드
사용 예
샘플 9: 실행 결과 subscribe: main
map1-1: main
map2-1: main
map3-1: main
onNext: main
map1-2: main
map2-2: main
map3-2: main
onNext: main
map1-3: main
map2-3: main
map3-3: main
onNext: main
from()
API 문서
java.util.concurrent.Executor를 Schedule로 변환
샘플 10: 코드
Executors.newFixedThereadPool 사용()
샘플 10: 실행 결과 subscribe: pool-1-thread-1
map1-1: pool-1-thread-2
map1-2: pool-1-thread-2
map1-3: pool-1-thread-2
map2-1: pool-1-thread-3
map2-2: pool-1-thread-3
map2-3: pool-1-thread-3
map3-1: pool-1-thread-4
map3-2: pool-1-thread-4
map3-3: pool-1-thread-4
onNext: pool-1-thread-1
onNext: pool-1-thread-1
onNext: pool-1-thread-1
끝맺다
학습회 필기
subscribe: main
map1-1: main
map2-1: main
map3-1: main
onNext: main
map1-2: main
map2-2: main
map3-2: main
onNext: main
map1-3: main
map2-3: main
map3-3: main
onNext: main
from()
API 문서
java.util.concurrent.Executor를 Schedule로 변환
샘플 10: 코드
Executors.newFixedThereadPool 사용()
샘플 10: 실행 결과 subscribe: pool-1-thread-1
map1-1: pool-1-thread-2
map1-2: pool-1-thread-2
map1-3: pool-1-thread-2
map2-1: pool-1-thread-3
map2-2: pool-1-thread-3
map2-3: pool-1-thread-3
map3-1: pool-1-thread-4
map3-2: pool-1-thread-4
map3-3: pool-1-thread-4
onNext: pool-1-thread-1
onNext: pool-1-thread-1
onNext: pool-1-thread-1
끝맺다
학습회 필기
java.util.concurrent.Executor를 Schedule로 변환
샘플 10: 코드
Executors.newFixedThereadPool 사용()
샘플 10: 실행 결과 subscribe: pool-1-thread-1
map1-1: pool-1-thread-2
map1-2: pool-1-thread-2
map1-3: pool-1-thread-2
map2-1: pool-1-thread-3
map2-2: pool-1-thread-3
map2-3: pool-1-thread-3
map3-1: pool-1-thread-4
map3-2: pool-1-thread-4
map3-3: pool-1-thread-4
onNext: pool-1-thread-1
onNext: pool-1-thread-1
onNext: pool-1-thread-1
끝맺다
학습회 필기
subscribe: pool-1-thread-1
map1-1: pool-1-thread-2
map1-2: pool-1-thread-2
map1-3: pool-1-thread-2
map2-1: pool-1-thread-3
map2-2: pool-1-thread-3
map2-3: pool-1-thread-3
map3-1: pool-1-thread-4
map3-2: pool-1-thread-4
map3-3: pool-1-thread-4
onNext: pool-1-thread-1
onNext: pool-1-thread-1
onNext: pool-1-thread-1
끝맺다
학습회 필기
Reference
이 문제에 관하여(RxJava 학습회 Week3), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Shiozawa/items/94202c8038d8e9f52e23텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)