我需要創建一個例程自動保存文件內容在一定時間,即執行保存指令的backgroung循環。我在使用鑫卡特performSelector的遞歸調用象下面這樣:如何在objective-c中創建後臺循環例程?
- (void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[self performSelector:@selector(saveMethod) withObject:nil afterDelay:kTimeConstant];
}
- (void)saveMethod{
//The save logic should to be here
[self performSelector:@selector(saveMethod) withObject:nil afterDelay:kTimeConstant];
}
它的工作原理,但是當我離開的viewController的,它仍在運行,並且它必須停下來。 有沒有更好的方法來執行它?謝謝!
你已經張貼在背景沒有做任何事情(即在一個單獨的線程)的代碼。你真的想要保存在非主線程上發生嗎? –
如果您不希望它被執行,那麼您可以在'viewWillDissapear:'方法中取消@selector方法。這不是後臺方法。它會在延遲後在主線程中調用。 – TheTiger
我有一個使用RichTextEditor,我想實現一個自動保存在一個時間段保存HTML內容,但它不'噸可以鎖定的執行,是用戶看不到的,所以我認爲它should't運行主線程。 –