¿Significa la declaración de "bloqueo" que está utilizando este material de varios subprocesos?
Ni siquiera intente compartir objetos ADO .NET entre subprocesos; no son seguros para subprocesos... Parece que más de uno el hilo crea una instancia de lector al mismo tiempo.