¿es necesario el bloqueo para la búsqueda de diccionario?

lock(dictionaryX)
{
   dictionaryX.TryGetValue(k,ey, out value);
}

¿es necesario bloquear mientras se realizan búsquedas en un diccionario?

El programa es multiproceso y agrega clave / valor a dict. dict está siendo bloqueado.