DispatchObject
요약
앱의 메인 스레드 또는 백그라운드 스레드에서 작업 실행을 직렬 또는 동시에 관리하는 객체입니다.
Summary
An object that manages the execution of tasks serially or concurrently on your app's main thread or on a background thread.
Declaration
class DispatchQueue : DispatchObject
토론
디스패치 큐는 응용 프로그램이 블록 개체 형태로 작업을 제출할 수있는 FIFO 큐입니다. 디스패치 큐는 작업을 직렬 또는 동시에 실행합니다. 디스패치 큐에 제출 된 작업은 시스템이 관리하는 스레드 풀에서 실행됩니다. 앱의 메인 스레드를 나타내는 디스패치 큐를 제외하고 시스템은 작업을 실행하는 데 사용하는 스레드를 보장하지 않습니다.
작업 항목을 동기식 또는 비동기식으로 스케줄합니다. 작업 항목을 동기식으로 스케줄하면 코드는 해당 항목의 실행이 완료 될 때까지 대기합니다. 작업 항목을 비동기식으로 예약하면 작업 항목이 다른 곳에서 실행되는 동안 코드가 계속 실행됩니다.
Discussion
Dispatch queues are FIFO queues to which your application can submit tasks in the form of block objects. Dispatch queues execute tasks either serially or concurrently. Work submitted to dispatch queues executes on a pool of threads managed by the system. Except for the dispatch queue representing your app's main thread, the system makes no guarantees about which thread it uses to execute a task.
You schedule work items synchronously or asynchronously. When you schedule a work item synchronously, your code waits until that item finishes execution. When you schedule a work item asynchronously, your code continues executing while the work item runs elsewhere.
중대한
기본 큐에서 작업 항목을 동기식으로 실행 하려고하면 교착 상태가 발생합니다.
Important
Attempting to synchronously execute a work item on the main queue results in deadlock.
[참조: Open in Developer Documentation]
'IOS 개발' 카테고리의 다른 글
[iOS] class UIImage : NSObject (0) | 2020.03.31 |
---|---|
[iOS] class UIControl : UIView (0) | 2020.03.31 |
[iOS] DispatchTime (0) | 2020.03.30 |
[iOS] class NSString : NSObject (0) | 2020.03.27 |
[iOS] protocol UITableViewDelegate (0) | 2020.03.24 |