Изявлението "заключване" означава ли, че използвате тези неща от множество нишки?
Дори не се опитвайте да споделяте ADO .NET обекти между нишки - те не са безопасни за нишки... Изглежда повече от един Нишката създава екземпляр на четец по същото време.