swift异步代码执行在结束之前停止

时间:2017-06-19 19:27:15

标签: swift asynchronous

我正在尝试在某个特定日期执行一段代码。我不能使用NSTimer作为此代码的目的,以便在完美的脚本中使用。

<div class="container text-center">
          <h1 class="display-3">What's the weather</h1>
          <p class="lead"><strong>Enter the name of a city:</strong></p>
        <form>

<input type="text" placeholder="E.g. Cape Town, London" name="city" id="city" class="form-control" value="">

          <p class="lead">
            <button type="submit" class="btn btn-primary btn-lg" id="button">Submit</button>
          </p>
        </form>
    </div>

问题是程序在有时间打印“停止”之前结束。此外,当我尝试在循环内打印某些内容时,它会在程序结束前打印几次。关于如何做到这一点的任何想法?

谢谢!

1 个答案:

答案 0 :(得分:1)

while true想法非常糟糕,您应该使用 Grand Central Dispatch

print("start")
DispatchQueue.main.asyncAfter(deadline: .now() + 10) {
    print("stop")
}