본문 바로가기
728x90
반응형

async2

swift에서 async와 await 기본 사용법과 http 통신에서 활용 async/await는 Swift 5.5에서 새롭게 도입된 비동기 프로그래밍 패턴입니다. 비동기 프로그래밍은 대개 긴 작업을 수행할 때 유용하며, 이를 통해 앱의 반응성을 높이고 멀티태스킹을 효과적으로 처리할 수 있습니다. async/await는 비동기 코드를 작성하고 호출하는 방법을 단순화하며, 콜백 기반의 비동기 프로그래밍에서 발생하는 복잡성을 줄여줍니다. async는 비동기 함수를 선언할 때 사용되며, await는 비동기 함수가 반환될 때까지 현재 스레드의 실행을 일시 중지합니다. 예를 들어, 다음과 같은 함수가 있다고 가정해 봅시다. func fetchUserData(completion: @escaping (Result) -> Void) { // 네트워크를 통해 사용자 데이터를 가져오는 긴 작업 .. 2023. 2. 24.
Synchronous operation using await when clicking a Button in SwiftUI and receiving the result through HTTP communication. SwiftUI에서 Button을 클릭했을때 HTTP 통신으로 결과를 가져오는 검색을 많이 이용합니다. 그런데 통신 시 사용하는 URLSession을 사용하면 비동기적으로 동작합니다. 그래서 버튼 내 검색을하는 함수를 만들어서 정상적으로 동작 시에 true를 가져오고 실패 시 false를 가져오는 함수를 만들면 잘못된 결과 값을 받게 된다. // async // 버튼 Button(action: { let bResult = asyncTest(url: URL(string: "https://www.google.com")!) print(bResult) }){Text("접속 코드 확인")} .buttonStyle(.borderedProminent) func asyncTest(url: URL) -> Bool { va.. 2022. 11. 24.
728x90
반응형