ios 46일차

bin·2026년 3월 9일

회고

오늘은 심화주차 발제가 진행되었으며, 새로운 팀 편성 및 새로운 과제가 나왔다. 처음으로 모두 한 팀이 되었기에 팀프로젝트가 어떻게 될 지 궁금하다.

강의에 관한 기록

이번 주차에서의 주요 내용은 RxSwift를 배우는 것인데, 아직 제대로 공부하지 않았고 Github에 업로드된 문서만 조금 읽어본 게 다이기 때문에, 강의를 들어보고 이해를 하며 정리하도록 하겠다. (아마 내일이나 모레 정리할 듯 하다.) 오늘은 기존에 수준별 분반 수업을 진행하며 배운 내용인 동기.비동기와 아키텍쳐에 대해 강의를 들었다. 이미 한번 다뤄본 내용이기 때문에, 어렵게 느껴지지는 않았다. 그럼에도 헷갈릴만한 내용과 기억하지 못했던 내용들을 정리하는 시간을 가졌다.

  • 프로세스: 실행중인 프로그램을 프로세스라 함.

  • 스레드: 프로세스 내에서 작업을 수행하는 단위.

    • 크게 메인 스레드와 백그라운드 스레드로 구분할 수 있다.
    • 여러 개의 스레드를 가지고 동시에 작업을 하는 것을 멀티 스레딩이라고 한다.
  • 동기 = synchronous = sync

    • 어떤 스레드에서 작업 A 를 처리하다가 새로운 작업 B 가 들어오면,
      그 작업 B 을 수행하고 완료될때까지 기다렸다가 다시 작업 A 를 수행하는 작업 처리 방식.
      직렬적으로 작업을 수행
  • 비동기 = asynchronous = async

    • 어떤 스레드에서 작업 A 를 처리하다 새로운 작업 B 가 들어오면,
      다른 스레드에 작업 B 를 넘기고, 수행하고 있던 작업 A 는 멈추지 않고 병렬적으로 동시에 수행하는 작업 처리 방식. 작업 B 가 완료되면, 완료되었다는 결과와 소식을 전해받는다.
      병렬적으로 작업을 수행
  • GCD (Grand Central Dispath)

    • 여러 가지의 스레드를 가지고 멀티 스레딩 작업을 하며, 비동기적으로 여러가지 작업을 수행하기 위해서는 Dispatch Queue 를 사용하면 된다.
  • Qos (Quality Of Service)

    • 작업의 중요도를 시스템에 알려주는 방법.
    • User Interactive (최고 우선순위)
    • User Initiated (높은 우선순위)
    • Default (기본 우선순위)
    • Utility (낮은 우선순위)
    • Background (최저 우선순위)
    • Unspecified (시스템 결정)

0개의 댓글