본문 바로가기

async

(2)
Discover Concurrency (3) - Async/await을 사용할 때 메모리 관리하기 비동기 코드 컨텍스트에서 앱의 메모리를 관리하는 것은 까다로운 작업이다. 비동기 호출이 수행되고 처리되기 위해 다양한 객체와 값이 시간이 지남에 따라 캡처되고 유지되어야 할 수 있기 때문이다. 비교적 최신 기술인 async/await 구문은 많은 종류의 비동기 작업을 더 쉽게 작성할 수 있게 해 주지만, 비동기 코드에 관련된 다양한 작업과 객체의 메모리를 관리할 때는 여전히 신중해야 한다. Implicit captures async/await 과 이를 동기 컨텍스트에서 호출하기 위하여 Task 로 래핑 하는 것의 흥미로운 점은 비동기 코드가 실행되었을 때, 어떻게 객체와 값들이 암시적으로 캡처되는 경우가 많다는 것이다. 예를 들어, DocumentViewController 에서 작업을 하고 있다고 해보자..
Discover Concurrency (1) - Task는 Swift Concurrency system내에서 어떤 역할을 할까? 개인적으로 WWDC 2022 - Eliminate data races using Swift Concurrency 에서 기본적인 Concurrency의 개념을 학습하고 나서 이 글을 읽으니 훨씬 이해하기 편했습니다. 아직 안 보셨다면 먼저 보시는 걸 추천드립니다! https://kswift.tistory.com/25 WWDC 2022 - Eliminate data races using Swift Concurrency 이번 세션의 주제는 data race 문제를 발생시키지 않고 효율적인 동시성 프로그램을 구성하는 전체론적인 Swift Concurrency의 관점을 확인할 것이다. 시작에 앞서 진행자는 concurrency를 바다에 비유한 kswift.tistory.com 스위프트의 concurrency 시스..