Op Englesch liesen Editéieren

Deelen iwwer


NamedPipeClientStream.NumberOfServerInstances Property

Definition

Gets the number of server instances that share the same pipe name.

C#
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public int NumberOfServerInstances { get; }
C#
public int NumberOfServerInstances { get; }
C#
public int NumberOfServerInstances { [System.Security.SecurityCritical] get; }

Property Value

The number of server instances that share the same pipe name.

Attributes

Exceptions

The pipe handle has not been set.

-or-

The current NamedPipeClientStream object has not yet connected to a NamedPipeServerStream object.

The pipe is broken or an I/O error occurred.

The underlying pipe handle is closed.

Examples

The following example demonstrates a method to send a string from a parent process to a child process using named pipes. In this example, a NamedPipeClientStream object is created in a child process, which then connects to a pipe on the local computer. The server example can be seen in the NamedPipeServerStream class. This example is part of a larger example provided for the NamedPipeServerStream and NamedPipeClientStream classes.

C#
using System;
using System.IO;
using System.IO.Pipes;

class PipeClient
{
    static void Main(string[] args)
    {
        using (NamedPipeClientStream pipeClient =
            new NamedPipeClientStream(".", "testpipe", PipeDirection.In))
        {

            // Connect to the pipe or wait until the pipe is available.
            Console.Write("Attempting to connect to pipe...");
            pipeClient.Connect();

            Console.WriteLine("Connected to pipe.");
            Console.WriteLine("There are currently {0} pipe server instances open.",
               pipeClient.NumberOfServerInstances);
            using (StreamReader sr = new StreamReader(pipeClient))
            {
                // Display the read text to the console
                string temp;
                while ((temp = sr.ReadLine()) != null)
                {
                    Console.WriteLine("Received from server: {0}", temp);
                }
            }
        }
        Console.Write("Press Enter to continue...");
        Console.ReadLine();
    }
}

Remarks

This property returns the number of server instances for the NamedPipeServerStream object that the current NamedPipeClientStream object has a handle to or is connected to. If the current NamedPipeClientStream object has not yet connected to a named pipe server, or if the current pipe handle has not yet been set, this property throws an InvalidOperationException.

Applies to

Produkt Versiounen
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1