Форум: "Прочее";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];
ВнизLDSLogger Найти похожие ветки
← →
Loginov Dmitry © (2007-04-10 11:05) [10]> если серьезно, то советую тебе поизучать серьезный многопоточный
> код.
> любой :) только качественного производителя. да хоть тот
> же TThread. Тогда таких детских ошибок делать не будешь.
Модуль будет правиться по мере наступления на грабли, связанные с неполным учетем особенностей многопоточного приложения. Если такие грабли будут, то может быть перепишу данный модуль. Но пока не вижу практической ситуации, где бы из-за отсутствия проверки GetLastError программа работала бы менее надежно. Насчет критической секции - согласен. Есть ненулевая вероятность того, что при первой попытке записи в лог сразу из нескольких потоков объект критической секции будет создан несколько раз. В этом случае поимеем и утечку памяти и ошибку ввода вывода.
В случае повторного создания мьютекса, имхо, даже ошибка ввода-вывода произойти не должна.
Чесно скажу, ошибка есть и в вызове функции GetFileSize() до CloseFile(), так как до CloseFile() вывод в файл кэшируется, и фактический размер файла не соответствует тому, что выдаст GetFileSize().
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.037 c