Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 使用objc_disposeClassPair()_Objective C_Cocoa_Objective C Runtime - Fatal编程技术网

Objective c 使用objc_disposeClassPair()

Objective c 使用objc_disposeClassPair(),objective-c,cocoa,objective-c-runtime,Objective C,Cocoa,Objective C Runtime,运行时API中有一个未记录的函数,它(基于一些玩具程序)执行其名称所示的功能: OBJC_EXPORT void objc_disposeClassPair(Class cls) AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER; 然而,详细的信息是相当薄的地面。因此,这与其说是单个问题,不如说是一组相关问题: 有没有关于它的好文章/博客帖子,或者有没有人有过使用它的经验(一个快速的谷歌建议PyObjC开发人员至少在某一点上考虑过使用它) 被处置

运行时API中有一个未记录的函数,它(基于一些玩具程序)执行其名称所示的功能:

OBJC_EXPORT void objc_disposeClassPair(Class cls) 
     AVAILABLE_MAC_OS_X_VERSION_10_5_AND_LATER;
然而,详细的信息是相当薄的地面。因此,这与其说是单个问题,不如说是一组相关问题:

  • 有没有关于它的好文章/博客帖子,或者有没有人有过使用它的经验(一个快速的谷歌建议PyObjC开发人员至少在某一点上考虑过使用它)
  • 被处置的类是否完全被解除分配(频繁创建和删除类的应用程序是否会泄漏内存?)
  • 除了关于未记录API的常见问题外,还有什么值得记住的问题吗
  • 苹果在哪里使用它?卸载包裹?KVO
被处置的类是否完全被解除分配(频繁创建和删除类的应用程序是否会泄漏内存?)


是的,它们将被完全解除分配。如果查看中的
cycle
函数,您会发现它同时分配和取消分配多个类。下面的
main
实现将该函数运行100次,并检查是否存在泄漏,这表明他们不会发布严重泄漏的实现。如果您想了解更多信息,应该查看中的代码。你可能会在那里的某个地方找到苹果公司两个函数的实际代码,以及它的使用位置。

你想实现什么,为什么你认为
objc\u disposeClassPair()
可以帮助你实现它?释放类正是我想要实现的,不是完成其他事情的手段。下一个最好的解决方案是“释放”类的黑客方式,如果可能的话,我希望避免这种方式。