# gcd와 operation gcd - 간단한 일 - 함수를 사용하는 작업 (메서드 위주) operation - 복잡한 일 - 데이터와 기능을 캡슐화한 객체 - 취소/ 순서지정/ 일시중지(상태 추적)이 가능함 - 오퍼레이션 객체를 오퍼레이샨 큐에 넣어서 사용함 - 오퍼레이션은 단위적인 작업을 클래스화한 것 - 객체를 인스턴스화해서 작업을 한번만 실행할 수 있다. - ![](https://i.imgur.com/blJLdmW.png) - 변수를 통해 오퍼레이션의 상태를 확인함 - 순서지정/ 취소를 하기 위해서 이런 변수를 사용하는 것임 - 취소할 때 - ![](https://i.imgur.com/Nfp6wX9.png) - ![](https://i.imgur.com/XBEEBLp.png) - 비동기 작업(네트워크 작업)일 경우 작업이 바로 취소되는 것이 아니고 서버가 작업을 리턴할 때 까지 중지되지 못할 수 있음 - 디스패치큐와 오퍼레이션큐의 취소기능 비교 - ![](https://i.imgur.com/6GoRJoI.png) - 디스패치워크아이템은 순서 지정이 가능 -