оке пошел гуглить про взаимоблокировки
имхо тут вопрос не в блокировках как таковых, а в подходе.
может стоит не в 10 потоков писать, а применить очередь на запись со стороны кода в шарпе (сразу скажу в шарп не умею)?
потому что сейчас ты разрулишь 10 потоков (к примеру), а потом вылезет задача в 20 потоков писать. и ты опять нарвешься на то что вылезут дедлоки.
у меня еще есть предположение (пальцем в небо) когда ты из одного приложения пишешь в бд - ты пишешь через одно соединение и СУБД не пытается разруливать поток запросов на запись. отсюда гипотеза - а если запустить 10 экземпляров кода и в каждом из них писать в бд в 1 поток. Будут ли возникать блокировки?