【发布时间】:2013-09-17 16:19:27
【问题描述】:
我可以使用什么来让基于 C# 的 UI 通过 Internet 与基于 C 的引擎对话?
我有一个用 C 语言编写的数据处理引擎 dll(我称之为服务器),它与用 C# 编写的用户界面客户端对话。 虽然我在这里使用术语“客户端”和“服务器”,但我只是在基于 C# 的 UI 与基于 C 的 UI“对话”的意义上使用它们 使用 P/Invoke 的引擎。
客户端和服务器都只能在 Windows 64 位环境中运行。该引擎是通用 C 语言,可以重新编译以在其上运行 任何操作系统,但目前(并且很可能正在进行中)我只关心 Windows 操作系统环境。
UI 控制应用程序,引擎坐下来等待来自 UI 的请求。通常,发动机将闲置 90% 使用应用程序的时间。一旦引擎收到来自 UI 的请求,它就会 处理请求的数据,并将结果返回给 UI。
在 UI 和引擎之间传递的数据量相对较少。当客户端和引擎交谈时,数据量 客户端发送给引擎的数据很小(小于 1k),引擎发回(通常)小于 5k 的数据。
在这种情况下,我应该使用什么来让客户端通过 Internet 与引擎对话?
【问题讨论】:
标签: c sockets dll client-server tcpclient