У меня есть программа на С ++ win32, которая использует сокеты для загрузки некоторых данных с сервера.
Перед использованием сокетов в Windows необходимо вызвать WSAStartup. MSDN говорит: «Должен быть вызов WSACleanup для каждого успешного вызова WSAStartup. Только последний вызов функции WSACleanup выполняет фактическую очистку».
Самый простой способ для меня - вызывать WSAStartup / WSACleanup каждый раз, когда я загружаю множество данных с сервера. В большинстве случаев будет только одно соединение за раз, поэтому WSACleanup будет выполнять фактическую очистку.
Вот почему мне интересно, какова стоимость WSAStartup и WSACleanup? Я имею в виду для выполнения фактической очистки. Если вызовы WSAStartup и WSACleanup длятся недолгое время по сравнению со всем соединением с сокетом, я могу использовать простой способ. Если нет, я должен позаботиться о вызове WSACleanup только при выходе из программы.