Esta documentación está archivada y no tiene mantenimiento.

NetworkStream (Clase)

Proporciona la secuencia de datos subyacente para el acceso a la red.

Espacio de nombres: System.Net.Sockets
Ensamblado: System (en system.dll)

public class NetworkStream : Stream
public class NetworkStream extends Stream
public class NetworkStream extends Stream

La clase NetworkStream proporciona métodos para enviar y recibir datos a través de sockets de Stream en modo de bloqueo. Para obtener más información sobre cómo bloquear o desbloquear Sockets, vea Utilizar un socket de cliente asincrónico. Puede utilizar la clase NetworkStream para la transferencia de datos sincrónica y asincrónica. Para obtener más información sobre la comunicación sincrónica y asincrónica, vea el tema Sockets.

Para crear una clase NetworkStream, es necesario suministrar un Socket conectado. También se puede especificar qué permiso de tipo FileAccess tiene NetworkStream con respecto al Socket proporcionado. De forma predeterminada, al cerrar NetworkStream no se cierra el Socket proporcionado. Si desea que NetworkStream tenga permiso para cerrar el Socket proporcionado, deberá especificar true para el valor del parámetro ownsSocket.

Utilice los métodos Write y Read para las operaciones de E/S de bloqueo sincrónica y sencilla con un solo subproceso. Si desea procesar las operaciones de E/S mediante subprocesos independientes, considere la posibilidad de utilizar los métodos BeginWrite y EndWrite, o los métodos BeginRead y EndRead para la comunicación.

NetworkStream no admite el acceso aleatorio a la secuencia de datos de red. El valor de la propiedad CanSeek, que indica si la secuencia admite búsquedas, es siempre false; al leer la propiedad Position, leer la propiedad Length o llamar al método Seek, se producirá una excepción NotSupportedException.

En el ejemplo de código siguiente se muestra cómo crear una clase NetworkStream a partir de un StreamSocket conectado y realizar operaciones básicas de E/S de bloqueo sincrónica.


// Create the NetworkStream for communicating with the remote host.
NetworkStream myNetworkStream;

if (networkStreamOwnsSocket){
     myNetworkStream = new NetworkStream(mySocket, true);          
}
else{
     myNetworkStream = new NetworkStream(mySocket);     
}

// specify file permission.
// Create the NetworkStream for communicating with the remote host.
NetworkStream myNetworkStream;
if (networkStreamOwnsSocket) {
    myNetworkStream = new NetworkStream(mySocket, true);
}
else {
    myNetworkStream = new NetworkStream(mySocket);
}

System.Object
   System.MarshalByRefObject
     System.IO.Stream
      System.Net.Sockets.NetworkStream

Los miembros estáticos públicos (Shared en Visual Basic) de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium, Windows Mobile para Pocket PC, Windows Mobile para Smartphone, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

.NET Framework

Compatible con: 2.0, 1.1, 1.0

.NET Compact Framework

Compatible con: 2.0, 1.0
Mostrar: