En utilisant this tutorial je suis venu avec le code ci-dessous. Mon client est exécuté fréquemment. Son activé via des clics et peut éventuellement être lancé deux fois au même moment dans certaines circonstances. Je suis inquiet qu'un client puisse fermer alors qu'un autre client s'ouvre ce qui provoque la fermeture du tuyau en quelques millisecondes. Quel est le meilleur moyen de garder le tuyau ouvert?La meilleure façon de garder une pipe ouverte après une fermeture à distance
static public void ThreadStartServer()
{
while (true)
{
using (NamedPipeServerStream pipeStream = new NamedPipeServerStream("mytestpipe"))
{
Console.WriteLine("[Server] Pipe created {0}", pipeStream.GetHashCode());
pipeStream.WaitForConnection();
Console.WriteLine("[Server] Pipe connection established");
using (StreamReader sr = new StreamReader(pipeStream))
{
string temp;
while ((temp = sr.ReadLine()) != null)
{
Console.WriteLine("{0}: {1}", DateTime.Now, temp);
}
}
}
}
Comment deux clients sont-ils connectés au même canal? Est-ce que ça peut marcher? –