Compartir a través de


NamedPipeClientStream.NumberOfServerInstances Propiedad

Definición

Obtiene el número máximo de instancias de servidor que comparten el mismo nombre de canalización.

public:
 property int NumberOfServerInstances { int get(); };
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public int NumberOfServerInstances { get; }
public int NumberOfServerInstances { get; }
public int NumberOfServerInstances { [System.Security.SecurityCritical] get; }
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
member this.NumberOfServerInstances : int
member this.NumberOfServerInstances : int
[<get: System.Security.SecurityCritical>]
member this.NumberOfServerInstances : int
Public ReadOnly Property NumberOfServerInstances As Integer

Valor de propiedad

El número máximo de instancias de servidor que comparten el mismo nombre de canalización.

Atributos

Excepciones

La canalización no se estableció.

o bien

El objeto NamedPipeClientStream actual no se ha conectado todavía a un objeto NamedPipeServerStream.

La canalización se ha roto o se ha producido un error de E/S.

El controlador de la canalización subyacente está cerrado.

Ejemplos

En el ejemplo siguiente se muestra un método para enviar una cadena de un proceso primario a un proceso secundario mediante canalizaciones con nombre. En este ejemplo, se crea un NamedPipeClientStream objeto en un proceso secundario, que luego se conecta a una canalización en el equipo local. El ejemplo de servidor se puede ver en la NamedPipeServerStream clase . Este ejemplo forma parte de un ejemplo más grande proporcionado para las NamedPipeServerStream clases y NamedPipeClientStream .

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();
    }
}
Imports System.IO
Imports System.IO.Pipes
Imports System.Security.Principal

Class PipeClient

    Shared Sub Main(ByVal args As String())

        Dim pipeClient As New NamedPipeClientStream("localhost", _
                    "testpipe", PipeDirection.In, PipeOptions.None)

        ' Connect to the pipe or wait until the pipe is available.
        Console.WriteLine("Attempting to connect to the pipe...")
        pipeClient.Connect()

        Console.WriteLine("Connect to the pipe.")
        Console.WriteLine("There are currently {0} pipe server instances open.", _
                          pipeClient.NumberOfServerInstances)

        Dim sr As New StreamReader(pipeClient)
        Dim temp As String

        temp = sr.ReadLine()
        While Not temp Is Nothing
            Console.WriteLine("Received from server: {0}", temp)
            temp = sr.ReadLine()
        End While
        Console.Write("Press Enter to continue...")
        Console.ReadLine()
    End Sub
End Class

Comentarios

Esta propiedad devuelve el número de instancias de servidor para el NamedPipeServerStream objeto al que está conectado o el objeto actual NamedPipeClientStream . Si el objeto actual NamedPipeClientStream aún no se ha conectado a un servidor de canalización con nombre o si aún no se ha establecido el identificador de canalización actual, esta propiedad produce una InvalidOperationExceptionexcepción .

Se aplica a