A computer-readable medium containing executable program instructions for performing a method comprising: in a plurality of networked nodes wherein each node has its own local object store, the object stores storing objects and sharing one or more objects, the objects having globally unique names across the networked nodes and wherein the object names do not change based upon where the objects are stored on the nodes; maintaining, at each node, a Local Reference Count LRC of local references to object names, independent of any object instance stored in the local object store, the LRC being maintained as a signed integer, wherein adjustments are made to the LRC for each local new reference and dereference and a de-referencing of an object name can generate a negative LRC value; wherein ownership of object names are assigned to different nodes, a range of object names being assigned to one of the network nodes and the node assigned ownership initiates a Global Reference Count GRC determining step for all or a subset of the range, the GRC determining step comprising: the owner node providing a unique tag for an object for which a GRC is to be determined; the nodes exchanging messages with the unique tag, whereby the other nodes provide the owner node with their LRC for the object; the owner node calculating the GRC as a sum of the LRCs received from the other nodes and the LRC of the owner node for the object; and if the resulting GRC is zero the owner node sending a delete message with the unique tag to the other nodes. in a plurality of networked nodes wherein each node has its own local object store, the object stores storing objects and sharing one or more objects, the objects having globally unique names across the networked nodes and wherein the object names do not change based upon where the objects are stored on the nodes; maintaining, at each node, a Local Reference Count LRC of local references to object names, independent of any object instance stored in the local object store, the LRC being maintained as a signed integer, wherein adjustments are made to the LRC for each local new reference and dereference and a de-referencing of an object name can generate a negative LRC value; wherein ownership of object names are assigned to different nodes, a range of object names being assigned to one of the network nodes and the node assigned ownership initiates a Global Reference Count GRC determining step for all or a subset of the range, the GRC determining step comprising: the owner node providing a unique tag for an object for which a GRC is to be determined; the nodes exchanging messages with the unique tag, whereby the other nodes provide the owner node with their LRC for the object; the owner node calculating the GRC as a sum of the LRCs received from the other nodes and the LRC of the owner node for the object; and if the resulting GRC is zero the owner node sending a delete message with the unique tag to the other nodes. the owner node providing a unique tag for an object for which a GRC is to be determined; the nodes exchanging messages with the unique tag, whereby the other nodes provide the owner node with their LRC for the object; the owner node calculating the GRC as a sum of the LRCs received from the other nodes and the LRC of the owner node for the object; and if the resulting GRC is zero the owner node sending a delete message with the unique tag to the other nodes.