我的程序经常在以下行崩溃(访问错误):
int writeSize = [_outputStream write:pCopyOfDataBuff maxLength:sendLength];
pCopyOfDataBuff 是一个
pCopyOfDataBuff = new unsigned char [sendLength];
在崩溃行之前分配并填充堆栈上的数据。Context 是一个处理这个流的特殊线程。
当我在调试器中停止时,使用符号异常断点,我发现 _outputStream 实际上是关闭的。
[_outputStream close];
在主线程中关闭。现在这可能同时发生了。
我的问题:在多个线程中处理这样的 NSOutputStream 是否安全?我应该将所有对 NSStream 的调用同步到同一个线程吗?
谢谢。我在文档中找不到简单的答案。