菜鸟教程小白 发表于 2022-12-12 23:12:39

ios - 了解 iOS 中的多线程


                                            <p><p>我正在尝试更详细地了解 iOS 上的多线程。我浏览了一些类引用,例如 <code>NSThread</code>、<code>NSRunLoop</code>、<code>NSTask</code>..</p>

<p>首先如以下链接所示:
<a href="https://stackoverflow.com/questions/9304253/use-of-nsrunloop-for-avoiding-event-driven-code" rel="noreferrer noopener nofollow">use of runloop</a> </p>

<p><code>Runloop</code> 在 <code>Thread</code> 中运行。 </p>

<p>那么为什么我们需要在我们的应用程序中定义自己的<code>Runloop</code>?在 <code>NSThread</code> 的情况下,它很有用,因为一些耗时的进程可以在单独的线程中运行,这样应用程序仍然可以在主线程上响应。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>如果您有一个线程希望定期继续其工作,那么与线程的运行循环交互可能会很有用。也就是说,一个运行循环会做一些工作,然后当它完成该工作时,它会让线程休息一段时间,然后在稍后恢复工作——有效地防止线程退出。您无需定期与它们交互或自己配置/创建它们(如果您使用的是高级抽象,例如 Foundation,则只有一小部分应用程序符合条件,因为 Foundation 在大多数情况下会代表您设置它们)。 </p>

<p>如果您的辅助线程只是执行指定的任务并且<em>不需要</em>需要等待一些外部事件(例如下载完成),那么您(通常)不需要与运行循环交互.</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 了解 iOS 中的多线程,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/12964473/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/12964473/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 了解 iOS 中的多线程