Unirx를 설명하는데 Observable의 설명을 빼놓을 수 없습니다.
전 포스트에서 Unirx를 가볍게 사용해 보았는데 그곳에서 이벤트를 호출하는 발행자인 Subject를 사용해보았다. 여기서 Subject는 Observable의 더 큰 개념으로 볼 수 있습니다.
Observable는 데이터 흐름의 생성, 변환, 필터링, 병합, 구독 오류 처리 및 완료 처리와 같은 다양한 연산을 지원할 수 있습니다. 아래의 예시를 확인하면 데이터 스트림을 생성하고 이벤트를 구독하며, 그리고 오류와 완료처리도 가능한것을 볼 수 있습니다.
예시 내용은 아니지만 비동기 처리도 가능합니다.
private void Start()
{
// Observable을 생성합니다.
// Range (a, b) : a 부터 a + b - 1 까지 OnNext 호출
IObservable<int> observable = Observable.Range(3, 5);
// Observable을 구독합니다.
IDisposable subscription = observable.Subscribe(
// 들어온 메시지에서 value 값을 로그에 출력합니다.
value => Debug.Log("Received: " + value),
// 에러가 날경우 에러 메시지를 로그에 출력합니다.
error => Debug.LogError("Error: " + error),
// 모든 이벤트 호출이 완료될 경우 Completed를 호출합니다.
() => Debug.Log("Completed")
);
}

'Unity > Unity_Unirx' 카테고리의 다른 글
| Unirx 사용해보기 (0) | 2023.10.16 |
|---|---|
| Unirx란? (0) | 2023.10.11 |