gpt4 book ai didi

Linux 中的 Swift 定时器

转载 作者:IT王子 更新时间:2023-10-29 00:57:23 28 4
gpt4 key购买 nike

请问如何在 Linux Ubuntu 16.04 上使用 Swift 4 中的 Timer 实例?

当我尝试做的时候:

let timer = Timer.scheduledTimer(timeInterval: 10.0, target: self, selector: #selector(MyClass.myMethod), userInfo: nil, repeats: true)

我收到错误:错误:'#selector' can only be used with the Objective-C runtime

最佳答案

您可以在 Linux 上使用基于 block 的定时器功能。这是一个最小的在 Xcode 9.1 中编译和运行的独立示例和 https://swift.sandbox.bluemix.net/#/repl :

import Foundation
import CoreFoundation

let timer = Timer.scheduledTimer(withTimeInterval: 2.0, repeats: false) { timer in
print("In timer function")
exit(0)
}

CFRunLoopRun()

(我添加了 exit(0) 只是因为 IBM Swift Sandbox 限制了程序执行时间为 5 秒。)

或者,使用 DispatchSourceTimer 作为演示 here .

关于Linux 中的 Swift 定时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47394725/

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