NSTimer

引数なし

override func viewDidLoad() {
    super.viewDidLoad()

    // タイマー生成
    let timer = NSTimer(timeInterval: 1.0, target: self, selector: "timerAction", userInfo: nil, repeats: true)

    // 登録
    NSRunLoop.currentRunLoop().addTimer(timer, forMode: NSDefaultRunLoopMode)


}

// タイマーで実行するアクション
func timerAction() {
    print("timer!")
}

引数あり

class ViewController: UIViewController {
    var count:Int = 0

    override func viewDidLoad() {
        super.viewDidLoad()

        // タイマー生成
        let timer = NSTimer(timeInterval: 1.0, target: self, selector: "timerAction:", userInfo: nil, repeats: true)

        // 登録
        NSRunLoop.currentRunLoop().addTimer(timer, forMode: NSDefaultRunLoopMode)


    }

    // タイマーで実行するアクション
    func timerAction(timer: NSTimer) {
        count += 1
        if count == 10 {
            // timerを停止する
            timer.invalidate()
        }
        print(self.count)
    }
}