I have an iOS/swift project with two views that both use CBLUITableSource to represent two different lists of CBLModel objects, games and players. Each type of CBLModel object holds a reference to another POSO which is lazily calculated because its expensive to do so. Its the stats for the game or the player. Both of my view controllers implement couchTableSource(source: CBLUITableSource!, cellForRowAtIndexPath indexPath: NSIndexPath) and in both cases they call CBLModel(forDocument: row.document) to get an instance of the model object.
On the game list, I get the behaviour I want which is that each game instance is instantiated only once and I only ever have to calculate the stats once. However on the players list, the modelObjects seem to get garbage collected because I frequently get new instances of player objects and have to recalculate the stats. The only obvious difference between the two lists is that on the game list I do: let game = Game(forDocument: row.document) and on the players list I do: let player = CBLModel(forDocument: row.document) as Player because there are different types of players and I want the CBLModelFactory to figure out which one it is. Has anyone seen this, or have any idea why this is happening? -- You received this message because you are subscribed to the Google Groups "Couchbase Mobile" group. To unsubscribe from this group and stop receiving emails from it, send an email to mobile-couchbase+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/mobile-couchbase/175be5ab-38ca-4b8d-a7e3-425e5a73e1a9%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.