我有一个C++应用程序,需要实时从网络摄像头发送图像到同一台PC上的C#应用程序。由于C++代码无法从C#代码中调用,因此我需要通过命名管道进行通信,以便传输图像。
我以前没有进行过任何通信编程,想知道如何解决这个问题。我的第一个想法是让C++应用程序在单独的线程上创建命名管道服务器,在创建后,该线程将持续等待直到有可用的图像要发送。然后它会发送图像。
类似地,C#应用程序将创建一个新线程作为客户端。它将连接到服务器并持续循环,直到有图像可用。然后它将接收图像并将其存储在主线程可以访问的队列中。
这种方法合理吗?这是最好的方法吗?
我以前没有进行过任何通信编程,想知道如何解决这个问题。我的第一个想法是让C++应用程序在单独的线程上创建命名管道服务器,在创建后,该线程将持续等待直到有可用的图像要发送。然后它会发送图像。
类似地,C#应用程序将创建一个新线程作为客户端。它将连接到服务器并持续循环,直到有图像可用。然后它将接收图像并将其存储在主线程可以访问的队列中。
这种方法合理吗?这是最好的方法吗?