Defesa contra condições de corrida em System.Collections.Concurrent.ConcurrentDictionary

O ConcurrentDictionary .NET é suscetível a uma condição de corrida que pode causar dados inesperados, conforme explicadona parte inferior deste artigo do MSDN. Estou assumindo que há vários fatores a serem levados em conta.

Q: Como devo escrever código que não é vulnerável a essa condição de corrida que pode causar perda de dados?

No meu cenário eu tenho um fluxo de entrada que tem sempre um índice crescente (n + +). Meu pensamento é que eu poderiadetectar dados perdidos se a condição de corrida ocorrer e reenviá-la. Por outro lado, pode haver uma maneira melhor de fazer isso que eu desconheço.

questionAnswers(1)

yourAnswerToTheQuestion