ios - 如何知道另一个线程是否正在访问资源?
<p><p>我有一个线程将文件写入文档目录,而另一个线程将尝试访问该文件并检查它是否可用以便使用它,否则它将使用临时变量。我的问题是如何测试其他线程是否已完成文件写入,或者在我检查文件时是否正在写入。</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>您可以使用辅助文件强制写入原子操作,而不是检查完成。</p>
<p>如果您使用支持辅助文件的 API 编写文档,类似于 <code></code>,则更改就像拨动开关一样简单。</p>
<p>如果您自己编写文件,请先写入一个不同名称的文件,关闭该文件,然后将其重命名为所需的名称。</p>
<p>例如,在将文档写入 <code>@"myfile.doc"</code> 的调用中,您可以将文档写入 <code>@"myfile.doc_aux"</code>,然后将其重命名为 <code>@"myfile.doc"</code>。如果第二个线程在写入完成之前检查 <code>@"myfile.doc"</code> 是否存在,则检查将失败。但是,当检查成功时,您可以确定文件已写入完成。</p></p>
<p style="font-size: 20px;">关于ios - 如何知道另一个线程是否正在访问资源?,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/20269535/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/20269535/
</a>
</p>
页:
[1]