На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела Visual Basic: Общие вопросы
Здесь обсуждаются вопросы по языку Visual Basic 1-6 (а так же по схожим языкам, как, например, PowerBASIC).
Вопросы по Visual Basic .NET (это который входит в состав Visual Studio 2002/2003/2005/2008+, для тех, кто не в курсе) обсуждаются в разделе .NET.

Обратите внимание:
1. Прежде чем начать новую тему или отправить сообщение, убедитесь, что Вы не нарушаете правил форума!
2. Обязательно воспользуйтесь поиском. Возможно, Ваш вопрос уже обсуждали. Полезные ссылки приведены ниже.
3. Темы с просьбой выполнить какую-либо работу за автора в этом разделе не обсуждаются. Студенты, вам сюда: ПОМОЩЬ СТУДЕНТАМ!
4. Используйте теги [ code=vba ] ...текст программы... [ /code ] для выделения текста программы подсветкой.
5. Помните, здесь телепатов нет. Формулируйте свой вопрос максимально грамотно и чётко: Как правильно задавать вопросы
6. Запрещено отвечать в темы месячной (и более) давности, без веских на то причин.

Полезные ссылки:
user posted image FAQ Сайта user posted image FAQ Раздела user posted image Кладовка user posted image Наши Исходники user posted image API-Guide user posted image Поиск по Разделу user posted image MSDN Library Online user posted image Google

Ваше мнение о модераторах: user posted image SCINER, user posted image B.V.
Модераторы: SCINER, B.V.
Страницы: (2) 1 [2]  все  ( Перейти к последнему сообщению )  
> Как избежать сбоя при записи в файл?
    leo тогда откуда вообще мусор берётся? Накидывает доп. кластеры файлу? Не обнулённые? Akina утверждал, что мусор - это часть данных внутри неполного кластера. Я же вижу, что мусора очень много, >300КБ (жаль не проверил, последовательные это записи или нет). Что касается мусора из памяти, то коль уж Вин записывает данные кластерами, то почему бы ей не брать данных на весь кластер из моего процесса и записывать, упреждая т.о. будущую запись? Да, безопасность ниже, но выше производительность. Если я пишу 128 байт из массива UDT, Вин может спокойно брать в целом 16 КБ данных от начала моей записи и писать их в файл... Она же не знает, что я записываю только последнюю запись массива, а далее мусор. Обычно в прогах запись данных идёт последовательно, и, если идёт запись некого большого массива, то такой механизм упреждения записи очень выгоден (особенно если побайтовая запись)... И тут можно кидать данные в буфер и проверять, были ли они записаны ранее, если да - то можно не писать. И может, механизм записи зависит от самой Винды.

    Добавлено
    И да, у меня запись последовательная, без прыжков - добавляется новый элемент в конец массива и тут же пишется в файл, указатель явно не перемещаю...
    0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
    0 пользователей:


    Рейтинг@Mail.ru
    [ Script execution time: 0,0176 ]   [ 16 queries used ]   [ Generated: 19.04.24, 19:23 GMT ]