본문 바로가기

🍎iOS프로그래밍/오늘의 공부39

iOS - DispatchQueue_2 DispatchQueue로 동시성을 알아보자 이전에 DispatchQueue를 학습하면서 두개의 Serial타입의 큐로 각각 sync 한다면 어떻게 처리될지 궁금했었습니다 며칠 생각을 해보다가 정리가 되어 직접 실행시켜 보면서 알게된 것을 몇가지 적어보려고 합니다 쓰레드에 어떻게 할당되느냐에 따라 다르게 동작 DispatchQueue는 상황에 따라 적절한 쓰레드에 Task를 할당하여 줍니다 이 때 하나의 쓰레드에 몰아주어 한번에 하나만 Task를 수행할 수 있고 여러개의 쓰레드에 할당시켜 동시에 처리하게 할 수 있습니다 sync와 async, 큐 타입을 적절히 이용해 필요한 방식으로 프로그래밍 해야합니다 아래와 같이 시리얼 타입 2개, Concurrency타입 2개를 생성해 테스트를 진행해 보겠습니다 /.. 2022. 7. 27.

iOS프로그래밍 - URL Scheme 외부 앱 호출하기 URL Scheme URL Scheme으로 외부와 통신하기 들어가기전 URL Scheme의 개념은 아래 포스팅에서 확인해주세요 https://admd13.tistory.com/110 Swift - URL Scheme을 알아보자, 다른 앱 호출하기 순서 URL Scheme의미 지원여부 확인 들어가기전.. 해당 포스팅은 URL Scheme의 개념에 대해 서술한 글입니다 다른앱을 호출하는 코드를 바로 보고 싶은 분은 아래 포스팅을 참고해 주세요 URL Scheme 의 admd13.tistory.com 프로젝트에 호출하고 싶은 앱의 URL Scheme을 등록한 뒤 코드를 통해 외부 앱을 호출합니다 간단히 예시를 들자면 앱스토어에 등록된 네이버맵 어플리케이션의 URL Scheme은 nmap:// 입니다 이 URL.. 2022. 7. 25.

iOS프로그래밍 - 이미지 캐싱(NSCache) 이미지 캐싱 이미지를 캐시에 저장하는 방법 이미지를 캐시에 저장하기 반복적으로 사용되어야 한는 자료들은 메모리에 저장해두고 필요할 때마다 꺼내쓰는 방식으로 리소스를 아낄 수 있습니다 애플에서 기본으로 제공해주는 NSCache 클래스를 사용하면 메모리에 데이터를 저장해 둘 수 있습니다 @IBAction func download(_ sender: UIButton) { var url = URL(string:self.stringURL1) let task1 = URLSession.shared.dataTask(with: url!) { data, response, error in guard let data = data else {return} let img = UIImage(data: data) DispatchQue.. 2022. 7. 23.