2015-08-21 140 views
0

我做一個「命令行工具」,我需要使用的NSTimer。 我開始計時,但它不工作...斯威夫特的NSTimer沒有工作

import Foundation 

class ct : NSObject { 
    func start() { 
     var timer = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: Selector("update"), userInfo: nil, repeats: true) 
    } 

    func update() { 
     println("test timer"); 
    } 
} 
var a = ct(); 
a.start() 

while(true) { sleep(10000000) } 
+0

儘量使定時器類的成員來代替。 – molbdnilo

+0

你能舉個例子嗎? – zig1375

+0

var timer:NSTimer?上述啓動功能,然後在啓動功能做這樣的時間= NSTimer.scheduledTimerWithTimeInterval(0.4,目標:自我,選擇:選擇(「更新」),用戶信息:無,重複:真),如果IFS沒有工作嘗試將其添加到currentRunloop –

回答

1

NSTimer需要一個運行循環正常工作,一個CLI沒有/需要一個默認。

呼叫

CFRunLoopRun() 

開始運行循環和

CFRunLoopStop(CFRunLoopGetCurrent()) 

阻止它,不要忘了要返回適當的返回值。