Здравствуйте Kitan, Вы писали:
K>Допустим, я хочу создавать для программы лог-файл и записывать в него сообщения из программы, для последующего их анализирования. Так вот вопрос: лог-файл открывать один раз в начале работы программы и закрывать в конце, или открывать/закрывать при записи каждого нового сообщения? K>Логично было бы открывать/закрывать при записи сообщений (типа меньше файлов открыто во время рвботы программы), но время на это тоже тратится, а скорость работы программы крайне критична. K>Кто сталкивался — подскажите. K>(Или это все экономия на спичках? :???: )
Если открывать файл в начале работы и закрывать в конце то естьь вероятность (и довольно большая) что если программа вылетит (её принудительно завершат) то последние записи в логе не будут. Можно обойти это отключив кеширование. Открывать и закрывать файл каждый раз ОЧЕНЬ плохо на FAT16/FAT32 дисках, на NTFS не очень, но тоже не ахти какая идея.
А чтот касаеться логов на NT платформе для этотго есть специальное API для ведения логов + eventlog service