当多个文件同时“写入文件”时,应用程序崩溃

时间:2009-07-16 04:58:24

标签: iphone

这是我的代码。

- (void) connectionDidFinishLoading: (NSURLConnection *) connection

{
    //Each connection has its own "downloadedData".
    BOOL writeFlag = [downloadedData writeToFile: filePath atomically: YES];
}

我同时有多个NSURLConnections。每个连接对应一个下载项。当多个下载同时完成时,App崩溃。这个方法是线程安全的吗?

它说:

_serverConnectionDiedNotification. Info -- notification=NSConcreteNotification 0x11d90470{name = AVController_ServerConnectionDiedNotification; object = <AVController: 0x11d855a0>},
 AVController = <AVController: 0x11d855a0>,currentTime = 0.00

Program received signal:  “0”.
warning: check_safe_call: could not restore current frame

谢谢!

2 个答案:

答案 0 :(得分:1)

我认为在不同的请求之间不共享downloadedData?因为那可能不是一个好主意。

我使用ASI-HTTPRequest库来满足我的http请求需求。很容易做正确的异步请求。您可能会发现它很有用。

答案 1 :(得分:1)

好的,我弄清楚了自己。除了下载Data之外,我还有一些数组和dictionarys与每个独特的连接配对。好像我没有仔细地处理这些收藏品。 当我清除这个烂摊子时,问题就消失了!