XCode 16.4 日本語化計画
タスク優先度拡大ハンドラを登録しながら、渡された operation を実行します。現在が優先度拡大の対象である場合、ハンドラは現在のタスクと同時に実行されます。
func withTaskPriorityEscalationHandler<T, E>( operation: () async throws(E) -> T, onPriorityEscalated handler: (TaskPriority, TaskPriority) -> Void, isolation: isolated (any Actor)? = #isolation ) async throws(E) -> T where E : Error
operation
どれに優先度を拡大するかを注目する操作
handler
優先度の拡大が発生したときに、操作と同時に呼び出すハンドラ
operation (操作) によって返される値
ハンドラは優先度の拡大時に追加のアクションを実行できますが、拡大がタスクにどのように影響するかには影響を与えません。つまり、ハンドラで実行されたアクションに関係なく、タスクの優先度は拡大されます。
ハンドラは、操作の進行中に優先度の拡大が発生した場合にのみ引き起こされます。
複数のタスク拡大ハンドラが入れ子にされている場合、それらはすべて引き起こされます。
タスクの拡大は、構造化された同時実行性の子タスクを通じて伝播します。
static var currentPriority: TaskPriority
現在のタスクの優先度。
static var basePriority: TaskPriority?
現在のタスクの基本優先度。