¿Estoy en lo cierto al pensar que este es el uso correcto de un diccionario concurrente?
private ConcurrentDictionary<int,long> myDic = new ConcurrentDictionary<int,long>();
//Main thread at program startup
for(int i = 0; i < 4; i++)
{
myDic.Add(i, 0);
}
//Seperate threads use this to update a value
myDic[InputID] = newLongValue;
No tengo bloqueos, etc. y solo estoy actualizando el valor en el diccionario, aunque varios subprocesos pueden estar intentando hacer lo mismo.
newLongValue
depende del valor anterior demyDic[InputID]
?