iOS线程循环逻辑

时间:2015-12-09 21:06:03

标签: ios json multithreading

我对在连续的线程上创建循环的逻辑感到有些困惑。只需要一个正确的方向点。 GCD还是NSOpereation?

我有这个JSON文件,每5分钟从一个Web作业更新。

有没有办法在后台运行一个线程,每隔N分钟或几秒钟不断检查JSON的变化?

我认为我可以使用,只是无法想象我将如何实施

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 1.0 * NSEC_PER_SEC),

1 个答案:

答案 0 :(得分:1)

我建议使用NSTimer与重复:true

override func viewDidLoad() {
    super.viewDidLoad()

    let _ = NSTimer.scheduledTimerWithTimeInterval(300, target: self, selector: Selector("checkForJSONChanges"), userInfo: nil, repeats: true)
}

func checkForJSONChanges() {
    ...
}

或者如果你正在使用Objective-C:

- (void) viewDidLoad {
    [super viewDidLoad];

    [NSTimer scheduledTimerWithTimeInterval:300.0f target:self selector:@selector(checkForJSONChanges) userInfo:nil repeats:YES];
}


- (void) checkForJSONChanges {
    ...
}