 
 	/**
 	counting down finished
-	(结束倒数计时)
 	*/
 	internal func stopCountDown() {
 		DispatchQueue.main.async {
 			self.finish?()
-//			if self.delegate.responds(to: Selector(("taskWithDidFinish:"))) == true {
-//				self.delegate.task(didFinish: self)
-//			}
+			self.delegate?.task(didFinish: self)
 		}
 	}
 


	/**
	start counting down
	(开始倒数计时)
	- parameter from:  a number count down from(起始计数)
	*/
	internal func startCountDown(from: Int) {
		self.queue!.async { [weak self] in


class CountDownTask: Task {

	/// a number counting down from
	private var from: Int?

	/// a number count down to, default is 0
	private var to: Int = 0

	/// count down interval in second, default is 1.0
	private var interval: Double = 1.0

	/// a block called in progress of counting down
	private var at: ((Int) -> Void)?

	/// a block called after counting down finished
	private var finish: (() -> Void)?

	/// a concurrent queue on which the task is attached
	private var queue: DispatchQueue?

	/// delegate
