1. A computer program product to track allocation of a plurality of objects in a heap, the computer program product comprising: a computer usable storage device having computer usable program code embodied therewith, the computer program product comprising: computer usable program code configured to prevent a first object from being moved to another place in memory or being deleted, during an object allocation, further comprising computer usable program code configured to prevent garbage collection for a thread that allocated the first object until a callback function returns, wherein some calls are restricted during the callback function, thereby permitting a profiler to set a pointer to a callback-safe function, wherein the callback-safe function is passed to a function as a pointer to executable code; computer usable program code configured to prevent is performed concurrently with garbage collection on a second object not currently being allocated; computer usable program code configured to notify the profiler of object information of the first object based on an object allocation via the callback function, wherein object information is a one-to-one mapping of the first object address; and computer usable program code configured to revive garbage collector processing of the first object.