2013-10-26 31 views
0

我收集到如果我创建一个自动释放对象并将其传递给另一个线程来处理,如果第一个NSThread应该发生以清除其自动释放池或被杀死,那么这很糟糕。但是,如果我想避免自动释放,那么我不能自动释放对象的一些示例,特别是我可能希望在NSThread之间共享的对象?在我看来,大多数autoreleasing可以避免。iOS:跨NSThead的自动释放对象

+0

使用ARC和GCD您可能会有更好的运气 –

+0

ARC?这是一个很好的技术,但使用它感觉就像穿围脖。至于GCD,我不想使用太多的Apple特定的东西,因为我的代码也必须在Android(本地C++)上运行。 – user2923996

+0

嗯,我不赞同ARC,因为它让编译器能够完成编译器最擅长的功能。完全理解x-plat的东西。 –

回答

0

只要遵循内存管理规则。线程没有区别。 函数只需要担心它在本地执行的操作;它永远不必担心任何其他功能的作用。函数需要保留一个对象,如果它需要被分配给一个实例变量或类似的东西。当某些东西被保留时,它需要与一个版本保持平衡。