R3 는 에러로 스트림을 끊지 않는다
UniRx 에서는 연산자 안에서 예외가 한 번 나면 그 버튼이 조용히 죽습니다. R3 는 예외를 OnErrorResume 으로 흘리고 구독을 살려 둡니다. 안 멈춤에서 멈춤으로는 연산자 하나로 갈 수 있지만 반대는 불가능해서입니다.
R3 는 UniRx 를 고치지 않고 다시 쓴 라이브러리다
R3 를 UniRx 의 다음 버전으로 보고 옮기면 중간에 막힙니다. 같은 저자가 범위를 이벤트 처리로 좁혀 계약부터 다시 만들었고, 옛 연산자 이름은 별칭 없이 지워 컴파일 에러로 드러나게 했습니다.
UniRx 의 비용은 무언가를 사려고 낸 값이다
Subject 에 구독 4,000개를 붙였다 떼면 123.1 MB 가 나옵니다. 배열 복사, 값마다 하는 재예약, 매 프레임 락은 락 없는 발행, 가상 시간, 스레드 자유를 사려고 낸 값입니다.
UniRx 는 씬의 오브젝트 하나로 프레임을 돌린다
버튼 연타 방지 같은 규칙을 UniRx 는 값의 흐름으로 다룹니다. 그 프레임 연산은 런타임에 스스로 만드는 MainThreadDispatcher 오브젝트의 코루틴 위에서 돌고, 시간은 스케줄러가 맡습니다.
취소는 부탁이지 명령이 아니다
스레드를 강제로 죽이는 방법은 없습니다. 대신 "이제 그만해 주세요" 를 전달하고 받는 쪽이 협조합니다.