IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Comment Paramétrer la taille du buffer!


Sujet :

C++

  1. #1
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2017
    Messages : 8
    Par défaut Comment Paramétrer la taille du buffer!
    SVP j'ai quelques questions concernant le buffer :

    - en premier lieu je voudrais bien savoir comment paramétrer la taille du buffer dans une classe.
    - une méthode qui lit le buffer jusqu'à la fin et puis attend ça lecture.
    - Ensuite je veux bien créer une méthode qui vide ce buffer à la fin de la lecture.
    - et finalement comment on peut lire les derniers données envoyer dans le buffer.

    Je vous remercie d'avance pour vos aides.

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 467
    Par défaut
    Ça dépend du type de buffer.
    Le code source SVP.

  3. #3
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2017
    Messages : 8
    Par défaut
    je mets ci_dessous les deux principaux méthodes de mon code.Merci!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    void ConnexionTCP::RunServer()
    {
     
    	// create a listening socket 
     
    	SOCKET listening = createSocket();
     
    	if (listening == INVALID_SOCKET)
    	{
    		cout << " could not create the socket, Err #" << WSAGetLastError() << endl;
    	}
    	else
    	{
    		cout << "Server starts at the IP Address: " << m_ipAddress << " and on the port: " << m_port << endl;
    	}
    	while (SOCKET client = waitForConnection(listening))
    	{
     
    		_beginthread(&(ConnexionTCP::Thread), 0, &client);
    	}
     
    }
     
    void ConnexionTCP::Thread(void * data)
    {
    	SOCKET* client = (SOCKET*)data;
    	SOCKET Newconnection = *client;
     
    	char buf[MAX_BUFFER_SIZE];
     
    	while (true)
    	{
    			int byteReceived = 0;
     
    			do
    			{
    				ZeroMemory(buf, MAX_BUFFER_SIZE);
    				byteReceived = recv(Newconnection, buf, MAX_BUFFER_SIZE, 0);
    				if (byteReceived > 0)
    				{
    					    send(Newconnection, buf, byteReceived + 1, 0);
    						cout << string(buf, 0, byteReceived) << endl;			
    				}
    			} while (byteReceived > 0);
    		}
    	closesocket(Newconnection);
    }

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 147
    Billets dans le blog
    4
    Par défaut
    Je ne vois pas le rapport entre la question et ce mauvais code
    - tu passes un truc temporaire à la création du thread
    - recv te retourne ce qui est disponible, ce n'est en rien un truc valid point de vue application

    Comment paramétrer la taille du buffer ? Modifie MAX_BUFFER_SIZE ?

    Sinon je t'invite à cliquer dans ma signature pour y voir comment fonctionne les sockets TCP et les utiliser un minimum correctement.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  5. #5
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 467

Discussions similaires

  1. [C#] Comment connaitre la taille d'un fichier.
    Par PascalCmoa dans le forum Windows Forms
    Réponses: 6
    Dernier message: 09/02/2018, 08h54
  2. Comment calculer la taille d'une base de données ?
    Par say dans le forum Décisions SGBD
    Réponses: 8
    Dernier message: 01/04/2011, 16h48
  3. Comment changer la taille Text < 8
    Par Xavier dans le forum C++Builder
    Réponses: 4
    Dernier message: 14/10/2004, 08h24
  4. Réponses: 3
    Dernier message: 23/01/2004, 21h02
  5. [Debutant] Comment lire la taille d'un fichier binaire ?
    Par Invité dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 18/12/2003, 19h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo