Notice
Recent Posts
Recent Comments
Link
투케이2K
136. (swift/xcode) OperationQueue , BlockOperation 오퍼레이션 큐 사용해 동기 순차 로직 구현 실시 본문
Swift
136. (swift/xcode) OperationQueue , BlockOperation 오퍼레이션 큐 사용해 동기 순차 로직 구현 실시
투케이2K 2022. 11. 25. 12:31[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT
[소스 코드]
// MARK: - [테스트 메인 함수 정의 실시]
func testMain() {
print("")
print("====================================")
print("[\(self.ACTIVITY_NAME) >> testMain() :: 테스트 함수 시작 실시]")
print("====================================")
print("")
/*
-------------------------------
[요약 설명]
-------------------------------
1. OperationQueue 는 연산 (Operation) 의 실행을 관리하고 대기열의 동작관리를 수행합니다
-------------------------------
2. OperationQueue 종류 :
- Main : 메인 스레드에서 동작 (ex - UI)
- Background : 백그라운드 스레드에서 동작 (ex - Network)
-------------------------------
*/
// [OperationQueue 선언 실시]
let queue = OperationQueue()
queue.maxConcurrentOperationCount = 1 // 오퍼레이션 큐 사이즈 지정
// [BlockOperation 사용해 동기 순차 로직 작성]
for i in 1 ... 2 {
let operation = BlockOperation {
// [메소드 호출 수행]
self.countTast(str: "\(i)")
}
// [오퍼레이션 추가]
queue.addOperation(operation)
}
}
// MARK: - [카운트 다운 로직 처리]
func countTast(str: String){
print("")
print("====================================")
print("[\(self.ACTIVITY_NAME) >> countTast() :: tast start =>> \(str)]")
print("====================================")
print("")
for i in 1 ... 2 {
print("")
print("====================================")
print("[\(self.ACTIVITY_NAME) >> tast [\(str)] :: \(i)]")
print("====================================")
print("")
}
print("")
print("====================================")
print("[\(self.ACTIVITY_NAME) >> countTast() :: tast end =>> \(str)]")
print("====================================")
print("")
}
[결과 출력]
반응형
'Swift' 카테고리의 다른 글
Comments