Ios 使用GCD提交数据的正确方式

Ios 使用GCD提交数据的正确方式,ios,objective-c,network-programming,grand-central-dispatch,Ios,Objective C,Network Programming,Grand Central Dispatch,在我的iOS应用程序中,我提交了文本数据和一堆图像。我创建了一个管理器类,它是一个单例类。它有两个单独的方法,一个用于文本数据提交,一个用于图像提交 因此,首先我提交文本数据,在成功提交时,会弹出警报,单击警报视图,我会弹出视图控制器,并使用GCD调用图像提交方法,sdispatch\u async(dispatch\u get\u global\u queue())方法。因此,我的问题是,当我从导航堆栈中弹出视图控制器时,当管理器类为singleton时,此图像提交方法是否有效,或者使用视图控

在我的iOS应用程序中,我提交了文本数据和一堆图像。我创建了一个管理器类,它是一个单例类。它有两个单独的方法,一个用于文本数据提交,一个用于图像提交


因此,首先我提交文本数据,在成功提交时,会弹出警报,单击警报视图,我会弹出视图控制器,并使用GCD调用图像提交方法,sdispatch\u async(dispatch\u get\u global\u queue())方法。因此,我的问题是,当我从导航堆栈中弹出视图控制器时,当管理器类为singleton时,此图像提交方法是否有效,或者使用视图控件时,singleton对象也将消失。

我不确定我是否理解您的问题。。。单例对象不只是“消失”,它们将保持加载状态,因为它们在单例类中具有对单例对象的强静态引用(即它们始终保持加载状态)。当然,除非您手动将该引用设置为
nil
。我的问题是,如果弹出视图控制器,该视图控制器的引用将变为nil,那么它仍将执行图像提交方法。是的。GCD将保留该块,直到它完成执行。@originaluser2非常感谢您的帮助。