⚠️

[Swift Concurrency] どうしてもsending valueにしたいとき

に公開

Swift6でどうにもならないとき

let workaround = { value }
let sendingValue = workaround()

https://github.com/swiftlang/swift/issues/77199

let nonSendingValue: MyType = ...
/// ❌ Sending 'nonSendingValue' risks causing data races
let something = Something(nonSendingValue) // .init(_ value: sending MyType)

この方法は開発者に正確な判断が求められる

Discussion