C# \\.\pipe\
时间: 2023-11-19 19:05:21 浏览: 126
C#中的`\\.\pipe\`是用于命名管道的命名空间前缀,它表示使用Windows API创建一个命名管道。命名管道是一种进程间通信机制,允许不同进程之间进行双向通信。在C#中,可以使用`NamedPipeServerStream`和`NamedPipeClientStream`类来创建和连接命名管道。下面是一个简单的例子:
```csharp
// 服务器端代码
using System.IO.Pipes;
NamedPipeServerStream server = new NamedPipeServerStream("testpipe", PipeDirection.InOut);
server.WaitForConnection();
StreamReader reader = new StreamReader(server);
StreamWriter writer = new StreamWriter(server);
string line;
while ((line = reader.ReadLine()) != null)
{
writer.WriteLine("Received: " + line);
writer.Flush();
}
server.Close();
// 客户端代码
using System.IO.Pipes;
NamedPipeClientStream client = new NamedPipeClientStream(".", "testpipe", PipeDirection.InOut);
client.Connect();
StreamReader reader = new StreamReader(client);
StreamWriter writer = new StreamWriter(client);
writer.WriteLine("Hello, world!");
writer.Flush();
string response = reader.ReadLine();
Console.WriteLine(response);
client.Close();
```
上述代码创建了一个名为`testpipe`的命名管道,并在服务器端等待客户端连接。客户端连接后,向服务器发送一条消息,服务器接收到消息后回复客户端。这个例子只是一个简单的演示,实际上命名管道可以用于更复杂的进程间通信场景。
阅读全文