首页 > 解决方案 > 尝试在 iOS 的 txt 文件中保存数据时出现 UI 阻塞

问题描述

我正在尝试使用以下代码以委托方法将接收值保存在 Txt 文件中。这些是整数值,我将这些值放在图形中,同时保存在 txt 文件中。但在 txt 文件中保存值会阻止图形绘制。

NSError *error;
NSString *filepath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)firstObject] stringByAppendingPathComponent:fileNameString];
NSString *string = [NSString stringWithContentsOfFile:filepath encoding:NSUTF8StringEncoding error:&error];
NSString *writeString = [NSString stringWithFormat:@"%@\n %@",string,values];

[writeString writeToFile:filepath atomically:YES encoding:NSUTF8StringEncoding error:&error];

PS:我用了这段代码dispatch_async,然后它没有保存所有接收值

标签: iosobjective-cuser-interface

解决方案


如果您正在推动一个线程并且并非所有值都被写入,那么这听起来像是线程的竞争条件。尝试在写入线程上进行所有字符串处理,以确保该线程是“事实来源”并具有最新信息。


推荐阅读