swift - 实现异步线程(使用 Swift 的 Xcode)

标签 swift asynchronous sprite-kit

我在 Xcode 中创建了一个游戏,目前主要使用 SpriteKit 中的 update 函数实现。它看起来像这样:

override func update(_ currentTime: TimeInterval) {

    if(gameStatus == status.preGame){

        //function calls here

    }

    else if(gameStatus == status.startUp){

        //function calls here
    }

    else if(gameStatus == status.inGame){

        //heavy function calls here

    }
}

当它在游戏中时,会多次调用以随机创建节点并移动它们等。我遇到了异步线程,并在互联网上进行了搜索,试图弄清楚如何实现它们,但我找不到任何可以帮助我实现我所寻找的东西的东西。

由于我目前的实现方式,我遇到了一些滞后问题,有人告诉我 Async 可能有助于稍微解决这个问题。我想知道是否有人知道如何为我的结构实现它。

感谢您的帮助!

最佳答案

 DispatchQueue.global(qos: .background).async {

    if(gameStatus == status.preGame){

        //function calls here

    }

    else if(gameStatus == status.startUp){

        //function calls here
    }

    else if(gameStatus == status.inGame){

        //heavy function calls here

    }

            DispatchQueue.main.async {

            }
        }

关于swift - 实现异步线程(使用 Swift 的 Xcode),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45156951/

相关文章:

ios - base64EncodedString 返回不需要的反斜杠

ios - 在 Swift/iOS 中使用 SSASideMenu 导航

ios - 在 SpriteKit 中生成随机地形

swift - SKPhysicsContact 未检测类别BitMask 碰撞

ios - Xcode 日志中找不到字体 SKLabelNode 警告

ios - 当 isTranslucent = False 时导航栏展开(Swift 3)

ios - 如何在 Alamofire 中使用 multipart 在多个图像数组中上传多个图像?

c# - TAP的多任务处理

java - 闩锁(用于等待异步响应)卡住 WebView(和 UI)

javascript - 如何在任意数量的链元素上使用 map 或 reduce 运行 promise-then 链?