通过更改iOS中本地对象的值来更新未反映的全局对象

时间:2016-02-02 17:03:25

标签: ios objective-c iphone

今天我在Objective C中面临一个非常奇怪的问题,如果有人可以帮我解决,我会非常感激。让我解释一下这个场景。

以下是案例:

  1. 我进行了一次webservice调用并获取了对象的NSArray并在Global类中进行了缓存。
  2. 我在视图控制器中有一个本地NSArray,它只是从Global类数组中分配的。喜欢这个

    self.listOfObjects = [GlobalCache sharedInstance].listOfObjects
    

    self.listOfObjects 非原子

  3. 在我更新self.listofobjects中的对象的场景中,让我们说一下数组中对象的nameProperty。它在self.listOfObjects中更新,当我使用命令

    打印对象时
    po ((ObjectType*)self.listOfObjects[0]).name
    

    很好并打印更新后的值。

  4. 但是当我看到GlobalCache中相同对象的值时,它还没有反映 有时 它还有旧值。
  5. self.listOfObjects只是对GlobalCache listOfobject的引用。 (否则从全局缓存复制到本地对象)
  6. 这可能是内存问题吗?

0 个答案:

没有答案