It's a bit like the singleton pattern with the twist that one passes arguments when acquiring the object and are getting the same object if and only if the arguments are the same. Example in python:
a = get_object(42)
b = get_object(42)
c = get_object(19)
a is b
a is not c