J'utilise actuellement des vecteurs comme tableaux de style c pour envoyer et recevoir des données via Winsock.Une manière plus efficace de réutiliser un vecteur comme tableau dans winsock?
J'ai un fichier std :: vector et je l'utilise comme mon "tableau d'octets". Le problème est, j'utilise deux vecteurs, un pour chaque envoi, et un pour chaque recv, mais ce que je fais semble être assez inefficace.
Exemple:
std::string EndBody("\r\n.\r\n");
std::fill(m_SendBuffer.begin(),m_SendBuffer.end(),0);
std::copy(EndBody.begin(),EndBody.end(),m_SendBuffer.begin());
SendData();
SendData appelle simplement envoyer la quantité appropriée de temps et assure que tout fonctionne comme il se doit.
Quoi qu'il en soit. À moins que je ne mette à zéro le vecteur avant chaque utilisation, j'obtiens des erreurs avec des chevauchements. Y a-t-il un moyen plus efficace pour moi de faire ce que je fais? Parce qu'il semble que la mise à zéro de l'ensemble du tampon à chaque appel est horriblement inefficace.
Merci.
Postez le code Envoyer() –
Oops, pour SendData(), je veux dire –
Qu'est-ce que vous essayez de faire réellement? – janm