Простейшая таблица, при добавлении записей в 30+ потоков(заканчиваются они почти одновременно... но врядли в этом дело), в БД попадает в лучшем случае половина данных, остальное - пустые строки.
@andrwork а откуда данные берутся? они проверяются перед тем как заносить в БД?
Как вариант конечно отдельный поток который будет собирать данные с рабочих потоков (через те же списки) и заносить их в БД, предварительно производя валидацию)
@iptips ну да. получаешь то что нужно, потом записать в файл. С галками дописывать файл и добавить символ новой строки. Потом прога вырубится, а файл останется.