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 :

probleme sur creation d un thread


Sujet :

C#

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Février 2007
    Messages
    95
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 95
    Points : 53
    Points
    53
    Par défaut probleme sur creation d un thread
    bonjour a tous

    je suis en train d essayé de faire un programme de client/serveur et pour cela j utilise des Threads pour certaines méthodes.. enfin j aimerai utilisé mais j'ai une erreur et je ne comprend pas pourquoi....


    voici mon code :

    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
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    using System;
    using System.Threading;
    using System.Net.Sockets;
    using System.Net;
    using System.Collections.Generic;
     
    namespace CreaturesTactics.Serveur
    {
     
        public class CTServeur
        {
     
     
     
            Thread thread_client = new Thread(new ThreadStart(Start_Serveur));
            /// <summary>
            /// declaration d un listener permettant d ecoute les ports TCP
            /// </summary>
     
     
     
            private TcpListener listener = new TcpListener(IPAddress.Parse("127.0.0.1"),2012);
            /// <summary>
            /// declaration d un client
            /// </summary>
            private TcpClient client;
     
     
            /// <summary>
            /// declaration d un tableau de byte pour la transmission des données
            /// </summary>
            private byte[] readBuffer;
            private byte[] sendBuffer;
     
            private int i;
            private string infoReceived;
            private string infoSend;
            private Boolean connected;
            private CallBack_Reception_Serveur callback;
            private CallBack_Reception_Serveur deco;
            public delegate void CallBack_Reception_Serveur(out string str);
     
            public CTServeur()
            {
     
                listener.Start();
                client = listener.AcceptTcpClient;
                thread_client.Start
                connected = true;
     
            }
     
      public void Start_Serveur()
            {
     
                while (true)
                {
     
                    try
                    {
                        string str = System.Text.Encoding.ASCII.GetString(readBuffer, 0, readBuffer.Length);
                        i = client.GetStream().Read(readBuffer, 0, readBuffer.Length);
                        callback.BeginInvoke(out str, null, null);
     
                    }
                    catch (Exception e)
                    {
                        string str = string.Empty;
                        deco.BeginInvoke(out str, null, null);
                    }
                }
     
            }
    j ai l impression qu il ne reconnait pas ma methode voici l erreur qu il met a la compilation:

    Un initialiseur de champ ne peut pas faire référence au champ, à la méthode ou à la propriété non statique 'CreaturesTactics.Serveur.CTServeur.Start_Serveur()'

    voila en esperant que je sois assez claire
    merci pour votre aide!!!!

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    547
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 547
    Points : 627
    Points
    627
    Par défaut
    Salut,

    le probleme se situe ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Thread thread_client = new Thread(new ThreadStart(Start_Serveur));
    Tu crées un thread en lui passant une methode qui n'est pas statique. De fait, il ne peut deviner à quelle instance est lié cette methode. Reporte tes instanciations dans le constructeur de ta classe, comme ca, le délégué se reportera à l'instance courante.

  3. #3
    Membre du Club
    Étudiant
    Inscrit en
    Février 2007
    Messages
    95
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 95
    Points : 53
    Points
    53
    Par défaut
    merci pour ta reponse mais maintenant le thread ne veut pas ce lancer....
    c est quand meme bizar qu il y est tand differance entre le csharp et le vb.net alors que c est le meme framwork !!!!

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    547
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 547
    Points : 627
    Points
    627
    Par défaut
    A tout hasard, AcceptClient est bloquant, tant que ton client n'est pas connecté, le thread ne sera pas lancé.

Discussions similaires

  1. probleme sur creation d'une classe avec netbeans 6.5
    Par bambi98 dans le forum NetBeans
    Réponses: 1
    Dernier message: 25/03/2009, 19h17
  2. Probleme sur creation de vue
    Par prin-prin dans le forum Administration
    Réponses: 6
    Dernier message: 05/04/2007, 15h54
  3. [VBA-E] Probleme sur création menu
    Par norkmassiv dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 08/12/2006, 17h12
  4. Probleme sur creation menu popup
    Par biloute2121 dans le forum MFC
    Réponses: 1
    Dernier message: 11/01/2006, 08h41
  5. Réponses: 2
    Dernier message: 17/11/2005, 13h57

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