Аналог sendfile

Тема в разделе "WASM.WIN32", создана пользователем exst, 6 сен 2009.

  1. exst

    exst New Member

    Публикаций:
    0
    Регистрация:
    11 янв 2009
    Сообщения:
    91
    Добрый день!

    Знатоки, подскажите Win аналоги никсового вызова sendfile.

    С Уважением, Александр!
     
  2. semen

    semen New Member

    Публикаций:
    0
    Регистрация:
    8 июн 2004
    Сообщения:
    334
    Адрес:
    Russia
    http://msdn.microsoft.com/en-us/library/ms740565(VS.85).aspx
    http://msdn.microsoft.com/en-us/library/ms740566(VS.85).aspx
     
  3. exst

    exst New Member

    Публикаций:
    0
    Регистрация:
    11 янв 2009
    Сообщения:
    91
    Не то. Мне нужно данные по известному смещению из одного открытого файла скопировать в другой.
     
  4. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    CreateFile/SetFilePointer/ReadFile/WriteFile
     
  5. semen

    semen New Member

    Публикаций:
    0
    Регистрация:
    8 июн 2004
    Сообщения:
    334
    Адрес:
    Russia
    sendfile был сделан восновном для операций с сокетами, если ты не используешь sendfile для записи в сокет, то и разницы между ним и синхронным io практически нету, за исключением экономии на вызов пары сисколов, это копейки.
    Чтобы сэкономить кол-во сискол вызовов делаешь следующее: мапиш 1 файл(2 сискола), делаешь синхронный\асинхронный запрос на запись(1\2 сискола). Если у тебя 32бит прога, то для файлов в несколько гиг придется делать цикл, т.к. весь файл ты не смапиш.
     
  6. retmas

    retmas New Member

    Публикаций:
    0
    Регистрация:
    4 фев 2005
    Сообщения:
    100
    TransmitFile
     
  7. semen

    semen New Member

    Публикаций:
    0
    Регистрация:
    8 июн 2004
    Сообщения:
    334
    Адрес:
    Russia
    retmas
    Про него был первый же ответ, оно для отсылки в сокет. К тому же оно ведет себя по-разному в серверной и воркстэйшн ос. Нормальная работа имхо только в серверной, если для сервера планируется использовать, иначе на полную многоядерную машину не загрузишь.
     
  8. exst

    exst New Member

    Публикаций:
    0
    Регистрация:
    11 янв 2009
    Сообщения:
    91
    Всем спасибо. Как я понял толку от данного вызова в моей ситуации нет.