чтение/запись в файлы медленно работает

Тема в разделе "WASM.BEGINNERS", создана пользователем zxcc, 7 сен 2009.

  1. zxcc

    zxcc New Member

    Публикаций:
    0
    Регистрация:
    21 окт 2006
    Сообщения:
    172
    Здравствуйте.Медленно работает если использую (CreateFile,ReadFile/WriteFile)запись/чтение большого кол-ва файлов.Подскажите как исправить?Спасибо.
     
  2. AndreyMust19

    AndreyMust19 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2008
    Сообщения:
    714
    Это и неудивительно. Если пишешь / читаешь в много файлов, то программа будет работать медленно. Жесткий диск ведь - самое медленное устройство.
    Как вариант, предлагаю прочитать весь файл в память и потом с ним работать.
     
  3. IceT

    IceT IceT

    Публикаций:
    0
    Регистрация:
    13 авг 2009
    Сообщения:
    233
    Адрес:
    RU
    Юзай потоки и мапирование. Почитай рихтера, хотя бы.
     
  4. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Дефраг.
     
  5. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    IceT
    При чём здесь потоки и маппирование?
     
  6. IceT

    IceT IceT

    Публикаций:
    0
    Регистрация:
    13 авг 2009
    Сообщения:
    233
    Адрес:
    RU
    Ну, я так понял, что он пишет последовательно в файлы (CreateFile,ReadFile/WriteFile) и его не устраивает скорость исполнения его программы.

    Ключевое слово:
     
  7. leo

    leo Active Member

    Публикаций:
    0
    Регистрация:
    4 авг 2004
    Сообщения:
    2.542
    Адрес:
    Russia
    Ключевого слова как раз и нет. Если чтение\запись нескольких файлов производится одновременно, то все понятно и никакие потоки тут не спасут. Единственный способ ускорения - это переход к последовательной обработке файлов, лучше целиком или хотя бы большими блоками
     
  8. IceT

    IceT IceT

    Публикаций:
    0
    Регистрация:
    13 авг 2009
    Сообщения:
    233
    Адрес:
    RU
    Хз, я его именно так понял. Пусть тогда задачу опишет нормально.
     
  9. zxcc

    zxcc New Member

    Публикаций:
    0
    Регистрация:
    21 окт 2006
    Сообщения:
    172
    Нужно производить запись/чтение последовательно большого кол-ва файлов.
     
  10. zxcc

    zxcc New Member

    Публикаций:
    0
    Регистрация:
    21 окт 2006
    Сообщения:
    172
     
  11. zxcc

    zxcc New Member

    Публикаций:
    0
    Регистрация:
    21 окт 2006
    Сообщения:
    172
    Извиняюсь.А можно узнать решения по 2 задачам(последовательно и одновременно).
     
  12. AndreyMust19

    AndreyMust19 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2008
    Сообщения:
    714
    Нет такого решения. Винчестер не может быстро читать помногу да еще и из нескольких файлов сразу!
    Решения тебе дали - #2 и #3.
     
  13. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Если файлы небольшие, то время на CreateFile часто даже больше, чем время чтения/записи. По крайней мере у меня так получалось. Может в этом дело?
     
  14. valterg

    valterg Active Member

    Публикаций:
    0
    Регистрация:
    19 авг 2004
    Сообщения:
    2.105
    Ну а если стоит антивирус, тогда гадалка не нужна.