.NET Remoting 和多线程查询

.NET Remoting and multithreading inquiry

如果这些问题不好,我深表歉意,但不久前我偶然发现了 .NET 远程处理,这让我有些困惑。我了解到,.NET 远程处理是一种调用与当前程序完全独立的对象的方法,对吗? (我的研究包括阅读和理解 MSDN Technical Overview of .NET Remoting)。

当我偶然发现 .NET 远程处理功能 (here) 时,那是因为我正在查找多线程处理方法。 .NET 远程处理是多线程的一种形式吗?跟多线程有关系吗?

提前感谢您的宝贵时间。

首先,如果您开始新的开发,.NET Remoting 不是一个好的选择,因为它很久以前就停止了。它仍然存在以提供向后兼容性。

自 .NET 3.0 以来,.NET Remoting 的正确选择一直是 Windows Communication Foundation.

关于您的顾虑,.NET Remoting 是一种模拟来自其他 AppDomain 的对象甚至来自同一台或其他机器的其他进程可以以非常透明的方式像常规离线对象一样共存的方法.

简而言之,我想说 .NET Remoting 不是为多线程目的而设计的,而是作为一种进程间通信方法.

现在使用 WCF 或 ASP.NET Web API,您可以在同一台机器的进程之间或同一或其他网络中的其他机器之间使用和发出对象。请参阅 WCF and ASP.NET Web API 自托管风格以了解如何在您的进程中托管网络 API 并让其他进程使用它们。