Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- MainScheduler.asyncInstance
- gitflow
- combine
- 프로그래머스
- leetcode
- SeSAC
- SRP
- 오픈채팅방
- GIT
- MainScheduler
- 코테
- DependencyInjection
- MethodSwilzzling
- 등굣길
- GCD
- RaceCondition
- DynamicMemberLookup
- DispatchQueue
- swift
- rxswift
- IOS
- MainScheduler.Instance
- 명품cppProgramming c++
- CoreBluetooth
- data_structure
- 청년취업사관학교
- SwiftUI
- DiffableDataSource
- cleanarchitecture
- Realm
Archives
- Today
- Total
목록GCD (1)
Do.
Race Condition / Thread Safe
Race Condition레이스 컨디션이란 동시에 여러 스레드 또는 프로세스에서 공유 자원에 접근하고 수정하는 상황에서 발생하는 문제를 말합니다. 특별히 신경쓰지 않으면 멀티스레드 환경에서 반드시 발생할 수 있는 것이죠. 흔히 발생하는 현상으로는 결과값이 예상과는 다르게 나오거나 잘못된 순서로 데이터가 적재됩니다. 메모리를 다루는 경우에는 BAC_ACCESS와 함께 앱 크래시가 발생할 수 있는 위험한 경우입니다! 어떤 상황에서 레이스 컨디션이 발생하는지 알아보겠습니다.Examplelet concurrentQueue = DispatchQueue(label: "com.queue", attributes: .concurrent) var sharedResource = 0 func test_task() throws..
General Dev
2023. 6. 26. 23:31