我正在快速尝试新的异步/等待模式,但遇到了一些让我感到困惑的事情。
\nstruct ContentView: View {\n var body: some View {\n Text("Hello World!")\n .task {\n var num = 1\n\n Task {\n print(num)\n }\n\n Task {\n print(num)\n }\n }\n }\n\n func printScore() async {\n var score = 1\n\n Task { print(score) }\n Task { print(score) }\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n\n有人可以澄清一下上面的屏幕截图,为什么编译器只抱怨捕获的var内部函数,而在使用结构体的计算属性上的修饰符printScore() 执行相同操作时不抱怨(即第 14-24 行)?taskbodyContentView
这是我提出的示例,并对编译器行为感到困惑。我还将编译器设置“严格并发检查\xe2\x80\x9d 构建设置”更改为\xe2\x80\x9cComplete\xe2\x80\x9d,但仍然不这样做没有看到编译器抱怨。
\n