Можно ли получить эквивалент "адреса памяти" объекта.net?

Мы внедряем пользовательский инструмент сериализации в наш проект и сталкиваемся с необходимостью однозначно идентифицировать каждый объект по типу примитивного значения, который можно использовать как синоним его "идентичности". Значение не должно иметь никакого значения или организации, только то, что оно уникально и постоянно, по крайней мере, на время процедуры сериализации. В идеале.net внутренне поддерживал бы уникальный и постоянный идентификатор объекта, который мы могли бы сохранить в качестве идентификатора объекта. Я знаю, что у каждого объекта есть GetHashCode метод, но мы не уверены в глобальной уникальности значения. Другим критерием доступа к такому идентификатору является то, что метод должен быть очень эффективным.

Я смотрел на GetHashCodeСборщик мусора, собирающий идеи, пока не пришел к чему-то твердому.

1 ответ

Вы ищете ObjectIDGenerator класс, который делает именно то, что вы пытаетесь сделать.

Другие вопросы по тегам