본문 바로가기
728x90
반응형

Xcode/Swift - PlayGround57

PlayGround) Actor에 대해 경험한 것 적어보기(feat: Task, Async Await) 안녕하세요. 후르륵짭짭입니다. 태풍이 지나갔네요. 그래서 재택 근무를 연속으로 해서 그런지 개인적인 시간이 많아서 좋았습니다. 사이드 프로젝트를 해야하는데, 마음이 쉽지 않네요 ㅠ ㅠ. 이번 글은 그냥 제가 경험한 Async Await와 Actor 그리고 Sendable 그리고 MainActor에 대해서 주관적으로 의식의 흐름 기법으로 작성해보려고 합니다. ** Actor ** 일단 Actor는 Swift 5.5 버전에서 부터 지원되는 비동기 프로그램의 안정성을 위해서 나온 것 입니다. 사내 프로젝트를 진행하다가 비동기 작업으로 race condition이 걸린 적이 있어서 앱이 죽은 적이 있습니다. 그 때 reference type의 값을 여러 쓰레드에서 접근하게 되어 죽은 적이 있어서 barrior를.. 2023. 8. 13.
Swift) AsyncStream 정리하기 (feat: Sequence, IteratorProtocol) 안녕하세요. 후르륵짭짭입니다. 한달만에 글을 작성하네요 ㅋㅋㅋㅋㅋ. 최근에 여행도 다녀오고 여러가지로 바쁜 일이 많아서 공부할 시간이나 글을 작성할 시간이 별로 없었네요. 지금 늦은 시간인데,,, 오늘 안 적으면 또 다음주로 미뤄질 것 같아서 적어보려고 합니다. 2023.06.12 - [Xcode/Swift - PlayGround] - Swift) Async - Await 정리하기 #2 (Async let, withTaskGroup, Task) 이전에 Async Await에 대해 정리한 적이 있습니다. 근데 이것도 하나의 연장선으로 비동기 Sequence인 Async Stream에 알아보려고 합니다. ** Sequence ** 일단 Async Stream을 알기 전에 Sequence 부터 알아야하는데, .. 2023. 7. 24.
Swift) Async - Await 정리하기 #2 (Async let, withTaskGroup, Task) 안녕하세요. 후루륵짭짭입니다. 이전에 Async Await에 대해서 체험판으로 정리한 적이 있었습니다. 2022.08.13 - [Xcode/Swift - PlayGround] - PlayGround) Async - Await 경험 정리#1 이때는 정말 체험판으로 작성 했다면, 이제는 좀 더 심도 있게 경험한 것들을 차례대로 정리나가려고 합니다. 정말 기본적인 것은 위에 정리하였고 오랜만에 다시 공부하면서 정리해보려고 합니다. ** Async - Await에 대한 정리 ** func calculateAPR(creditScores : [CreditScore]) -> Double { let sum = creditScores.reduce(0, {next, credit in return next + credit... 2023. 6. 12.
PlayGround) PropertyWrapper와 Dependency Injection 안녕하세요. 후르륵짭짭입니다. 이번에는 PropertyWrapper에 대해서 알아보려고 합니다. SwiftUI를 사용하다 보면 @ViewBuilder , @Binding 등 "@"가 들어가는 anotation을 볼 수 있습니다. 이런 것들이 PropertyWrapper라고 하는데, 공통적인 로직을 처리할 때 사용하면 좋습니다. ** PropertyWrapper를 사용하는 방법 ** 위 사진 처럼 Struct나 Class와 같은 Instance에 @propertyWrapper를 붙여 주면 "wrappedValue"가 없다는 오류가 나오게 됩니다. 그러면 Fix를 눌러주면 wrappedValue가 생기게 되고 Value 부분에 원하는 타입을 넣어주면 됩니다. @propertyWrapper struct Cha.. 2023. 1. 23.
728x90
반응형