1. At a computer system, the computer system including one or more processors and system memory, a method for synchronizing reference information between a counted object graph and a garbage collected object graph in preparation for an attempt to reclaim system resources, the method comprising: building, in the system memory, a cyclic object graph, the cyclic object graph including: (i) a counted object graph including one or more reference counted objects having their lifetime managed in accordance with reference counting; and (ii) a garbage collected (“GC”) object graph including one or more GC objects having their lifetime managed in accordance with garbage collection, a particular reference counted object of the counted object graph referencing a particular GC object of the GC object graph through a counted wrapper of the counted object graph, the particular GC object referencing the particular reference counted object through a reference wrapper of the GC object graph, the counted wrapper storing a reference from another reference counted object to a further object that is reclaimed in accordance with GC and being reclaimed in accordance with reference counting, the reference wrapper storing a reference from another GC object to a further object that is reclaimed in accordance with reference counting and being reclaimed in accordance with GC; in preparation for performing garbage collection of objects in the cyclic graph from the system memory: determining that the counted wrapper can be reached from the reference wrapper via the counted object graph; creating a new reference from the reference wrapper to the particular GC object; and protecting the lifetime of the particular GC object referenced through the counted wrapper and the new reference; and performing garbage collection to determine if any allocated system resource can be reclaimed from the system memory, garbage collection considering the particular GC object to be effectively referenced by the reference wrapper such that it cannot be reclaimed.