Besoin des Conseils(Application C#)

Fermé
MRAD Messages postés 86 Date d'inscription mardi 21 octobre 2008 Statut Membre Dernière intervention 17 avril 2009 - 17 avril 2009 à 11:30
Bonjour,
Je programme en C# il y a 3 mois, 3 ans d'experience en programmation (pascal, C, C++)
Je veux creer 3 applications en C# comme suite:

1- Une application Client : connecte sur un serveur dans un LAN via un UserName et un password, si le UserName et le password existant dans la base de donnees du serveur, le client peut envoier et recevoir des donnees du serveur.
2- Une application Admin : connecte directement a la base de donnees pour ajouter ou modifier des donnees.
3- Une application Server, travaille en background et devra toujour en execution pour qu'elle accept les connection des Clients. Cette application connecte a une base de donnees contenant des informations concenant les Clients, renvois ces donnees suivants le besoin du Clients

--> J'ai commencé de cree les application Client et Server et j'ai etablit la connection entre eux dans un reseau locale (Application exemple (Sockets) dans MSDN avec quelque modification) et j'ai constaté que mon application Server ne peut traiter q'un seul Client a la fois : Comment puis-je ameliorer ceci en premier lieu?
 while (true)
            {
                Thread.Sleep(1000);
                TcpClient tcpClient = tcpListener.AcceptTcpClient();
                byte[] bytes = new byte[512];
                NetworkStream stream = tcpClient.GetStream();
                stream.Read(bytes, 0, bytes.Length);
                SocketHelper helper = new SocketHelper(); // une classe qui traite le message reçu
                helper.processMsg(tcpClient, stream, bytes);
            }

Le serveur effectue toujour cette boucle pour detecter une connetion parvenu d'un client. Comme puis-je amelioree ceci?

Merci pour prendre la peine de lire.