ObjecTips

Swift & Objective-C で iOS とか macOS とか

Task.init と Task.detached の書き方バリエーション

以下5つは同じ

Task {
}

Task.init {
}

Task.init() {
}

// deprecated
async {
}


// deprecated
async() {
}

以下6つは同じ

Task.detached {
}

Task.detached() {
}

// deprecated
Task.runDetached {
}

// deprecated
Task.runDetached() {
}

// deprecated
detach {
}

// deprecated
detach() {
}

いずれも引数の priority を省略して operation を Trailing Closure で省略表記した形。
WWDCでの発表から正式リリースまでの間に書かれた記事やコードはこの辺ばらつきがあるの読む時は注意。*1

まとめ

シンプルに以下2つを記憶に残して他は忘れて良し

Task {
}

Task.detached {
}

*1:注意というか軽く読み流す感じで