NamedPipeClientStream.NumberOfServerInstances Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá počet instancí serveru, které sdílejí stejný název kanálu.
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
Hodnota vlastnosti
Počet instancí serveru, které sdílejí stejný název kanálu.
- Atributy
Výjimky
Rukojeť potrubí nebyla nastavena.
-nebo-
Aktuální NamedPipeClientStream objekt ještě nebyl připojen k objektu NamedPipeServerStream .
Kanál je přerušený nebo došlo k chybě vstupně-výstupních operací.
Základní úchyt potrubí je zavřený.
Příklady
Následující příklad ukazuje metodu pro odeslání řetězce z nadřazeného procesu do podřízeného procesu pomocí pojmenovaných kanálů. V tomto příkladu NamedPipeClientStream je objekt vytvořen v podřízené procesu, který se pak připojí k kanálu v místním počítači. Příklad serveru lze vidět ve NamedPipeServerStream třídě. Tento příklad je součástí většího příkladu NamedPipeServerStream pro třídy a 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
Poznámky
Tato vlastnost vrátí počet instancí serveru pro NamedPipeServerStream objekt, ke kterému má aktuální NamedPipeClientStream objekt popisovač nebo ke kterému je připojen. Pokud se aktuální NamedPipeClientStream objekt ještě nepřipojil k pojmenovanému serveru kanálu nebo pokud aktuální úchyt kanálu ještě nebyl nastaven, vyvolá tato vlastnost .InvalidOperationException