Swift でクロージャーのself循環参照を回避する

UIViewController の self をクロージャー内で参照した場合、インスタンスが破棄された後に、呼び出される可能性があるため、以下のように weak self を指定して循環参照を回避します。

closureMethod(id, callback: { [weak self] (error: NSError!) -> Void in
    if let weakSelf = self {
        weakSelf.tableView.reloadData()
    }
})