NamedPipeClientStream.NumberOfServerInstances Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém o número de instâncias de servidor que partilham o mesmo nome de pipeline.
public:
property int NumberOfServerInstances { int get(); };
public int NumberOfServerInstances { [System.Security.SecurityCritical] get; }
public int NumberOfServerInstances { get; }
[<get: System.Security.SecurityCritical>]
member this.NumberOfServerInstances : int
member this.NumberOfServerInstances : int
Public ReadOnly Property NumberOfServerInstances As Integer
Valor de Propriedade
O número de instâncias de servidor que partilham o mesmo nome de pipeline.
- Atributos
Exceções
A maçaneta do tubo ainda não foi ajustada.
-ou-
O objeto atual NamedPipeClientStream ainda não está ligado a um NamedPipeServerStream objeto.
O tubo está partido ou ocorreu um erro de I/O.
A manivela subjacente do tubo está fechada.
Exemplos
O exemplo seguinte demonstra um método para enviar uma string de um processo pai para um processo filho usando pipes nomeados. Neste exemplo, um NamedPipeClientStream objeto é criado num processo filho, que depois se liga a um pipeline no computador local. O exemplo do servidor pode ser visto na NamedPipeServerStream aula. Este exemplo faz parte de um exemplo mais amplo fornecido para as NamedPipeServerStream classes e 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
Observações
Esta propriedade devolve o número de instâncias de servidor para o NamedPipeServerStream objeto ao qual o objeto atual NamedPipeClientStream tem um handle ou está ligado. Se o objeto atual NamedPipeClientStream ainda não se ligou a um servidor de pipe nomeado, ou se o handle de pipe atual ainda não foi definido, esta propriedade gera um InvalidOperationException.