在编写远程桌面捕获应用程序时使用任务或线程

Use Task or Thread when Coding a Remote Desktop Capture App

最近我正在编写一个远程桌面应用程序。

对于客户端,我有一个 Windows 具有图片框控件和按钮的表单应用程序。在内部,我有两个监听器和两个 TcpClient,一个用于保持连接,另一个用于从远程计算机接收图像。

对于作为控制台应用程序的服务器端,我有两个连接到远程客户端的 TcpClient 对象。建立连接后,服务器开始拍摄桌面快照并将它们发送到客户端。然后客户端接收图片并在图片框控件上显示图片。

要在图片框上显示图像并确保它是异步的,必须使用任务或线程。但是在这种情况下,哪个更好地用于接收图像并将其显示在图片框控件上?

此致

编辑: 补充我的问题,哪个在性能方面和系统资源使用方面最好?

您可能不需要使用 Thread class,它的级别很低,很难将单独的异步操作组合在一起。

Task API 更易于使用并将多个异步操作组合在一起,它们还支持取消并通过 asyncawait 关键字提供语言支持,这使得编写异步代码成为可能容易得多,尽管仍然需要了解它是如何工作的,因为可能会有一些陷阱。有关最佳做法的更多详细信息,请参阅 this link