gpt4 book ai didi

swift - 下面的 Swift block 语法有什么问题?

转载 作者:搜寻专家 更新时间:2023-11-01 06:48:06 24 4
gpt4 key购买 nike

我正在将 AWS S3 服务集成到我基于 Swift 的项目中,但我卡在了下面的 sysntax 中,因为没有关于 API 与 Swift 的用法的描述,所以我试图自己转换代码。

transferManager.download(downloadRequest).continueWithExecutor(BFExecutor.mainThreadExecutor(), withBlock: 
{ (task:BFTask!) -> AnyObject! in
println("test")
})

我遇到以下错误!

Type '()' does not conform to protocol 'AnyObject'

最佳答案

我不确定问题出在哪里,但切换到常规 continueWithSuccess 可以。如果您需要 block 在线程上执行,您可以在 block 内使用中央调度。

例如,如果你需要在主UI线程上执行的 block ,你可以这样写

        transferManager.download(downloadRequest).continueWithSuccessBlock({
(task: BFTask!) -> BFTask! in
dispatch_async(dispatch_get_main_queue(), {
println("test")
})
return nil
})

dispatch ... 只有当你想在一个单独的线程上运行 block 时才需要。

关于swift - 下面的 Swift block 语法有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27616688/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com