.NET のパイプ操作
パイプは、プロセス間通信の手段となります。 パイプには、2 種類あります。
匿名パイプ。
匿名パイプは、ローカル コンピューターでのプロセス間通信を実現します。 匿名パイプは、名前付きパイプより必要なオーバーヘッドは少ないですが、提供するサービスは限られています。 匿名パイプは一方向であり、ネットワーク経由で使用することはできません。 これでは、1 つのサーバー インスタンスのみをサポートしています。 匿名パイプは、スレッド間、またはパイプ ハンドルを作成時に子プロセスに簡単に渡すことができる親と子のプロセス間の通信で便利です。
.NET では、AnonymousPipeServerStream クラスと AnonymousPipeClientStream クラスを使用して匿名パイプを実装します。
「方法:ローカルのプロセス間通信で匿名パイプを使用する」を参照してください。
名前付きパイプ。
名前付きパイプは、パイプ サーバーと 1 つ以上のパイプ クライアントとの間でのプロセス間通信を提供します。 名前付きパイプは、一方向であることも、双方向であることも可能です。 これでは、メッセージ ベースの通信がサポートされ、同じパイプ名を使用して複数のクライアントが同時にサーバー プロセスに接続することができます。 名前付きパイプでは、プロセスを接続してリモート サーバーで独自のアクセス許可を使用する、偽装もサポートしています。
.NET では、NamedPipeServerStream クラスと NamedPipeClientStream クラスを使用して名前付きパイプを実装します。
「方法:ネットワークのプロセス間通信で名前付きパイプを使用する」を参照してください。
関連項目
.NET