У меня есть ситуация, когда я должен отслеживать ПЕРВЫЕ изменения, примененные к полю. Это относится к «некоторым» (10, если я не ошибаюсь) полям структуры, которая должна быть максимально эффективной (это структура, которая будет интенсивно использоваться для передачи информации между потоками для рендеринга / обновления данных; структура передачи сообщений в основном).
В этом случае я говорю о компактной среде xbox .net, я слышал, что свойства имеют проблемы с производительностью, потому что они не встроены, поэтому мой вопрос:
Какой лучший способ справиться с этой ситуацией?
2 идеи:
1) Я отслеживаю первое изменение, внесенное в поле, поэтому я использую свойство , которое автоматически установит битовое поле равным 1, чтобы сказать «Я был изменилось!» (это битовое поле является частью одного целого, так что это только 4-байтовые издержки), но я потрачу все остальные вызовы на это свойство, потому что они просто изменят значение, потому что бит уже установлен (до следующего кадра, очевидно, )
2) I вручную отслеживайте изменение поля (что будет общедоступным), устанавливая бит своими руками (больше возможностей для ошибок, но оптимизировано)
Спасибо за любые предложения