ViewModel.run1() はMainActorでは実行されないから、処理系が混んでたら止まる。 具体的にどうやってUIKitやSwiftUIに接続するか、とか、実際やってる人がいるかはわかんないです。 actor を使うこともあるけど、最終的に View に接続するときに @MainActor な ObservableObject を挟むから大丈夫だと思う。直接は接続できないけど。async を避けるために Task.init にしたことで何が解決されてるのかはよくわからない。async にした方がいいと思う。 (edited)