Canaux nommés : un exemple pratique de communication inter-processus
Les canaux nommés offrent une solution robuste et efficace pour la communication inter-processus (IPC). Cet exemple utilise une application console simple pour montrer comment deux programmes échangent des messages via des canaux nommés.
Nous allons construire deux programmes : le programme A, qui envoie un message, et le programme B, qui reçoit et répond.
Programme A : Envoi du message
Le programme A utilise le NamedPipeClientStream
du .NET Framework pour se connecter à un canal nommé appelé « PipeLine ». Après connexion, il transmet le message "Hello World" à l'aide d'un StreamWriter
.
Programme B : Réception et réponse
Le programme B utilise NamedPipeServerStream
pour créer et surveiller le canal nommé "PipeLine". Lors de la connexion, un StreamReader
et un StreamWriter
gèrent la réception et la réponse des messages.
<code class="language-csharp">// Program A using (var client = new NamedPipeClientStream("PipeLine")) { client.Connect(); using (var writer = new StreamWriter(client)) { writer.WriteLine("Hello World"); writer.Flush(); } } // Program B using (var server = new NamedPipeServerStream("PipeLine")) { server.WaitForConnection(); using (var reader = new StreamReader(server)) using (var writer = new StreamWriter(server)) { string message = reader.ReadLine(); writer.WriteLine("Roger That"); writer.Flush(); } }</code>
Ceci illustre les principes fondamentaux de la communication par canal nommé : création de canal, établissement de connexion et échange de messages. Cet exemple simple fournit une compréhension fondamentale de la mise en œuvre de solutions IPC dans vos projets.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!