SWIFTの同期、非同期、GCD
4834 ワード
同期(同期)
要求
func distance(p1 : Int, p2 : Int) -> Int {
return abs(p2 - p2)
}
func area(x1 : Int, y1 : Int, x2 : Int, y2 : Int) -> Int {
let dX = distance(x1, x2) // 이 줄에서 실행하고, distance 를 돌아 오는동안 area은 멈춰있는다.
let dY = distance(y1, y2)
return dX * dY
}
非同期
簡単に言えば、動機と非動機です.
喫茶店で飲み物を注文しましょう.
動機は前の人が注文して、飲み物が届くまで注文できません.
一人の従業員が注文を受け、客に振動ベルを配布し、もう一人の従業員が飲み物を作り続け、非同期を提供した.
SWIFTで非同期を実行するにはどうすればいいですか?
✅ GCD (Grand Central Dispatch)
Concurrent Queues
とSerial Queues
が存在する.DispatchQueue.global().async {
// 구현부
}
DispatchQueue.main.async {
// 구현부
}
✅ Operation Queue
GCOOpen Queueは、単純な複雑な作業方法を主とするタスクデータと機能、およびカプセル画像の状態が不明、並べ替え/一時停止のキャンセルなどの状態を追跡しやすいFIFOの他の要因である.
コメントドキュメント
1. https://medium.com/@goehd2538/ios%EC%9D%98-%EB%B9%84%EB%8F%99%EA%B8%B0-%EC%B2%98%EB%A6%AC%EB%B0%A9%EC%8B%9D-65aa81aad0f9
Reference
この問題について(SWIFTの同期、非同期、GCD), 我々は、より多くの情報をここで見つけました https://velog.io/@jee/Swift의-동기와-비동기-그리고-GCDテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol