当前位置: 首页 > wzjs >正文

做网站的背景图片要多大个人简历网页设计

做网站的背景图片要多大,个人简历网页设计,做网站怎么调用栏目,昆明 网站设计C# 应用进程间通信(IPC)技术方案 进程间通信(Inter-Process Communication, IPC)是不同进程之间交换数据和消息的机制。以下是C#中常用的IPC技术方案: 1. 命名管道(Named Pipes) 适用于本地机器上的进程通信,支持双向通信。 ​​服务端示例​​&…

C# 应用进程间通信(IPC)技术方案

进程间通信(Inter-Process Communication, IPC)是不同进程之间交换数据和消息的机制。以下是C#中常用的IPC技术方案:

1. 命名管道(Named Pipes)

适用于本地机器上的进程通信,支持双向通信。

​服务端示例​​:

 

csharp

using System.IO.Pipes;var server = new NamedPipeServerStream("MyPipe", PipeDirection.InOut);
server.WaitForConnection();using (StreamReader reader = new StreamReader(server))
using (StreamWriter writer = new StreamWriter(server))
{string message = reader.ReadLine();Console.WriteLine($"Received: {message}");writer.WriteLine("Hello from server!");writer.Flush();
}

​客户端示例​​:

 

csharp

using System.IO.Pipes;var client = new NamedPipeClientStream(".", "MyPipe", PipeDirection.InOut);
client.Connect();using (StreamReader reader = new StreamReader(client))
using (StreamWriter writer = new StreamWriter(client))
{writer.WriteLine("Hello from client!");writer.Flush();string response = reader.ReadLine();Console.WriteLine($"Server response: {response}");
}

2. 内存映射文件(Memory-Mapped Files)

允许不同进程通过共享内存进行通信。

​写入进程​​:

 

csharp

using System.IO.MemoryMappedFiles;using (var mmf = MemoryMappedFile.CreateOrOpen("MySharedMemory", 1024))
using (var accessor = mmf.CreateViewAccessor())
{byte[] message = Encoding.UTF8.GetBytes("Hello from Process 1!");accessor.WriteArray(0, message, 0, message.Length);
}

​读取进程​​:

 

csharp

using (var mmf = MemoryMappedFile.OpenExisting("MySharedMemory"))
using (var accessor = mmf.CreateViewAccessor())
{byte[] buffer = new byte[1024];accessor.ReadArray(0, buffer, 0, buffer.Length);string message = Encoding.UTF8.GetString(buffer).TrimEnd('\0');Console.WriteLine($"Received: {message}");
}

3. WCF (Windows Communication Foundation)

.NET框架提供的强大通信框架,支持多种协议。

​服务端​​:

 

csharp

using System.ServiceModel;[ServiceContract]
public interface IMyService
{[OperationContract]string GetMessage();
}public class MyService : IMyService
{public string GetMessage() => "Hello from WCF service!";
}var host = new ServiceHost(typeof(MyService), new Uri("net.pipe://localhost"));
host.AddServiceEndpoint(typeof(IMyService), new NetNamedPipeBinding(), "MyService");
host.Open();

​客户端​​:

 

csharp

var factory = new ChannelFactory<IMyService>(new NetNamedPipeBinding(),new EndpointAddress("net.pipe://localhost/MyService"));IMyService proxy = factory.CreateChannel();
string message = proxy.GetMessage();
Console.WriteLine($"Service response: {message}");

4. 套接字(Sockets)

适用于网络通信,也可用于本地进程间通信。

​TCP服务端​​:

 

csharp

var listener = new TcpListener(IPAddress.Loopback, 12345);
listener.Start();var client = listener.AcceptTcpClient();
using (var stream = client.GetStream())
using (var reader = new StreamReader(stream))
using (var writer = new StreamWriter(stream))
{string request = reader.ReadLine();writer.WriteLine($"Echo: {request}");writer.Flush();
}

​TCP客户端​​:

 

csharp

var client = new TcpClient("localhost", 12345);
using (var stream = client.GetStream())
using (var reader = new StreamReader(stream))
using (var writer = new StreamWriter(stream))
{writer.WriteLine("Hello from client!");writer.Flush();string response = reader.ReadLine();Console.WriteLine(response);
}

5. 消息队列(MSMQ)

适用于异步、可靠的进程间通信。

​发送消息​​:

 

csharp

using System.Messaging;if (!MessageQueue.Exists(@".\Private$\MyQueue"))MessageQueue.Create(@".\Private$\MyQueue");var queue = new MessageQueue(@".\Private$\MyQueue");
queue.Send("Hello from sender process!", "Test Message");

​接收消息​​:

 

csharp

var queue = new MessageQueue(@".\Private$\MyQueue");
queue.Formatter = new XmlMessageFormatter(new[] { typeof(string) });Message message = queue.Receive();
Console.WriteLine($"Received: {message.Body}");

6. 文件监视(File System Watcher)

通过共享文件和文件系统事件进行通信。

​写入进程​​:

 

csharp

File.WriteAllText("shared.txt", "Hello from Process 1!");

​监视进程​​:

 

csharp

var watcher = new FileSystemWatcher
{Path = Directory.GetCurrentDirectory(),Filter = "shared.txt",NotifyFilter = NotifyFilters.LastWrite
};watcher.Changed += (s, e) => 
{string content = File.ReadAllText(e.FullPath);Console.WriteLine($"File changed: {content}");
};watcher.EnableRaisingEvents = true;

7. COM/DCOM

适用于与遗留系统或非.NET应用程序通信。

​COM服务器示例​​:

 

csharp

[ComVisible(true)]
[Guid("...")]
[ClassInterface(ClassInterfaceType.AutoDual)]
public class MyComServer
{public string GetMessage() => "Hello from COM server!";
}

​COM客户端​​:

 

csharp

Type comType = Type.GetTypeFromProgID("MyComServer");
dynamic comObject = Activator.CreateInstance(comType);
string message = comObject.GetMessage();

选择建议

  1. ​高性能需求​​:内存映射文件或命名管道
  2. ​跨机器通信​​:WCF或套接字
  3. ​可靠异步通信​​:MSMQ
  4. ​简单临时通信​​:文件监视
  5. ​与旧系统集成​​:COM/DCOM

每种方案都有其适用场景,应根据具体需求选择最合适的IPC技术。


文章转载自:

http://M9JktwOe.sypzg.cn
http://odIUZXiV.sypzg.cn
http://0sBxBAni.sypzg.cn
http://z5imX0iy.sypzg.cn
http://fMD4haZn.sypzg.cn
http://CPCoVo7A.sypzg.cn
http://b4PnuEpY.sypzg.cn
http://SkpETRk0.sypzg.cn
http://UTmmi207.sypzg.cn
http://4t4OQKgJ.sypzg.cn
http://G2dY3pEZ.sypzg.cn
http://uGaVRjnJ.sypzg.cn
http://TzU9p3uO.sypzg.cn
http://ZS6N49Bg.sypzg.cn
http://EPWSz9Z0.sypzg.cn
http://bIuLNaUU.sypzg.cn
http://j3eaesUZ.sypzg.cn
http://0pAPKuXo.sypzg.cn
http://W6NMkCbs.sypzg.cn
http://WigmSljy.sypzg.cn
http://gxVVAOkx.sypzg.cn
http://A3qrh6uv.sypzg.cn
http://LbkvSpkH.sypzg.cn
http://tNbUmbTk.sypzg.cn
http://w6nApU9U.sypzg.cn
http://CcBSiJ3t.sypzg.cn
http://bKOMHWjZ.sypzg.cn
http://7XiFx7qn.sypzg.cn
http://8iWYeZeq.sypzg.cn
http://8XuTbeWd.sypzg.cn
http://www.dtcms.com/wzjs/636428.html

相关文章:

  • 网站哪里买外链html5网站建设源码
  • 如何做环保管家网站.net程序员网站开发工程师
  • 主流的网站开发框架四川电子有限公司 - 手机网站
  • 微信微网站开发策划北京网站建设华网天下买送两年
  • 这样做自己公司的网站二级域名能查到一级域名吗
  • 旅游网站功能模块银川网站建设多少钱
  • 常州网站seo平台网站建设推荐
  • 阿里巴巴国际站可以做网站吗手机网站怎么设置成电脑版的
  • 中国建设银行网站网上银行石材网站建设多少钱
  • 网站建设要准备些什么2021半夜好用的网站
  • 网站建设验收方发言稿网页设计优秀作品展示
  • 奥迪网站建设策划书金融 网站 模板
  • 杭州网站设计公司联系亿企邦做旅游网站的好处
  • 高港区住房和城乡建设局网站wordpress的开发框架
  • 多语种网站建设开发建设一个网站的技术可行性研究
  • 手机可以看的网站深圳网站建设啊
  • 低价网站建设渠道阳江招聘网最新招聘
  • 名人网站设计版式wordpress 文字不显示
  • 网页设计网站作业网上购物软件
  • 怎样做电商网站的财务分析免费企业名录网站
  • 微网站开发平台怎么把qq空间做成企业网站
  • 专门做游戏攻略的网站重庆品牌型网站建设
  • 爱情网站设计深圳龙华网站公司
  • 织梦网站做404页面哪些网站是用php做的
  • 家具网站设计网自适应网站制作费用
  • 良庆网站建设教做面食的网站
  • 学校网站制作多少钱临沂网站建设找谁
  • 淳安千岛湖建设集团网站弄一个网站要多少钱
  • 开服表网站开发微信公众号申请注册官网
  • 中文儿童网站模板建设通网站是什么性质