我需要知道用户何时停止命令行程序从命令行程序(在终端上运行)释放一些活动的蓝牙连接,用swift编写。
假设用户调用程序然后按ctrl + Z退出。 我怎么知道?
答案 0 :(得分:1)
您可以使用Swift安装信号处理程序。例如:
import Foundation
let startTime = Date()
var signalReceived: sig_atomic_t = 0
signal(SIGINT) { signal in signalReceived = 1 }
var i = 0
while true {
if signalReceived == 1 { break }
usleep(500_000)
if signalReceived == 1 { break }
i += 1
print(i)
}
let endTime = Date()
print("Program has run for \(endTime.timeIntervalSince(startTime)) seconds")
从this gist修改。