combine (2) 썸네일형 리스트형 eraseToAnyPublisher eraseToAnyPublisher는 Publisher프로토콜을 구현하는 타입에서 호출, 해당 Publisher의 타입을 숨기고 AnyPublisher 타입으로 변환합니다. 이 변환을 통해 Publisher의 구체적인 타입정보를 숨기고 API설계 단순화에 도움이됩니다. 예 func fetchData(url: URL) -> AnyPublisher { URLSession.shared.dataTaskPublisher(for: url) .map { $0.data } .eraseToAnyPublisher() } fetchData함수는 URL을 인수로 받아 데이터를 요청하고 결과를 반환하는 역할입니다. API요청을 수행하고 map연산자를 사용하여 데이터만 추출합니다. 그리고 eraseToAnyPublisher메서드.. Combine01 개요 Combine 프레임워크는 지정된 이벤트 소스에 대해 단일 처리 체인을 만들 수 있다. 체인의 각 부분은 이전 단계에서 받은 요소에 대해 고유한 작업을 수행하는 결합 연산자이다. 비동기 프로그래밍 begin var name = "Tom" print(name) name += " Harding" print(name) end -> 단일 스레드에서 실행되므로 결과가 항상 같음 --- Thread 1 --- begin var name = "Tom" print(name) --- Thread 2 --- name = "Billy Bob" --- Thread 1 --- name += " Harding" print(name) end -> 어떤 스레드가 먼저 실행될지 모르며 결과가 매번 달라질 수 있다. 애플의 비동기 프로.. 이전 1 다음