모바일앱/iOS

Operation

GeekCode 2022. 1. 15. 22:43
반응형

 

Operation

GCD는 우리가 Queue에 작업을 보내면 그에 따른 스레드를 적절히 생성해서 분배해주는 첫번째 방법이라고 지난 글에 올렸다.

 

Operation  비슷한 기능을 한다.

Operation에서 사용하는 queue의 이름은 Operation Queue 

이 녀석도 내부적으론 GCD 위에서 동작하지만 몇 가지가 추가된다.

  • 동시에 실행할 수 있는 동작의 최대 수 지정
  • 동작 일시 중지 및 취소

정리하자면

 

 

 

해야하는 작업들은 기본적으로 따로 지정하지 않는 한, 메인스레드에서 처리하게 되어있다.

ios에서는 이것을 queue라는 곳으로 보내면 작업들은 그 곳에서 선입선출로 처리 하게 된다. 

그래서 이 다수의 일들을 스레드에 분배하는 기술들중의 하나가

- GCD (Grand Central Dispatch)

Queue에 작업을 보내면 그에 따른 스레드를 적절히 생성해서 분배해주는 첫번째 방법

DispatchQueue.global().async {
  //task
}

- Operation

GCD 와 거의 동일, GCD 위에서 동작하지만 몇 가지가 추가된다. Operation에서 사용하는 queue의 이름은 Operation Queue 

  • 동시에 실행할 수 있는 동작의 최대 수 지정
  • 동작 일시 중지 및 취소

GCD보다는 Operation 구현이 조금 더 복잡

 

https://velog.io/@kevinkim2586/iOS-Swift-%EA%B3%B5%EB%B6%80-Operation-Queue

 

iOS & Swift 공부 - Operation Queue

연산(Operation)의 실행을 관리하고 대기열의 동작관리를 하는 Operation Queue스위프트에서 Queue 를 볼 때마다 Main Queue Operation (ex. UI updates) 인지, 아니면 Background Queue Operation (ex

velog.io

참고

반응형