Socket.Available Eigenschap
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee haalt u de hoeveelheid gegevens op die is ontvangen van het netwerk en die beschikbaar is om te worden gelezen.
public:
property int Available { int get(); };
public int Available { get; }
member this.Available : int
Public ReadOnly Property Available As Integer
Waarde van eigenschap
Het aantal bytes aan gegevens dat van het netwerk is ontvangen en beschikbaar is om te worden gelezen.
Uitzonderingen
Er is een fout opgetreden bij het openen van de socket.
De Socket is gesloten.
Voorbeelden
In het volgende codevoorbeeld worden de resultaten van het aanroepen van IOControl vergeleken met FIONREAD en de eigenschap Available.
// FIONREAD is also available as the "Available" property.
public const int FIONREAD = 0x4004667F;
static void DisplayPendingByteCount(Socket s)
{
byte[] outValue = BitConverter.GetBytes(0);
// Check how many bytes have been received.
s.IOControl(FIONREAD, null, outValue);
uint bytesAvailable = BitConverter.ToUInt32(outValue, 0);
Console.WriteLine("server has {0} bytes pending. Available property says {1}.",
bytesAvailable, s.Available);
return;
}
Opmerkingen
Als u een niet-blokkerende Socketmethode gebruikt, Available is een goede manier om te bepalen of gegevens in de wachtrij staan om te lezen, voordat u aanroept Receive. De beschikbare gegevens zijn de totale hoeveelheid gegevens in de wachtrij in de netwerkbuffer om te lezen. Als er geen gegevens in de wachtrij worden geplaatst in de netwerkbuffer, Available wordt 0 geretourneerd.
Als de externe host de verbinding afsluit of sluit, Available kan er een SocketException. Als u een SocketExceptionontvangt, gebruikt u de SocketException.ErrorCode eigenschap om de specifieke foutcode te verkrijgen. Nadat u deze code hebt verkregen, raadpleegt u de Windows Sockets versie 2 API-foutcode documentatie voor een gedetailleerde beschrijving van de fout.
Note
Dit lid voert traceringsgegevens uit wanneer u netwerktracering inschakelt in uw toepassing. Zie Network Tracing in .NET Framework voor meer informatie.