Compartir a través de


Canalizaciones (RPC)

El constructor de tipo de canalización es un mecanismo muy eficaz para pasar grandes cantidades de datos o cualquier cantidad de datos que no esté disponible en memoria a la vez. Mediante una canalización, el tiempo de ejecución rpc controla la transferencia de datos real, lo que elimina la sobrecarga asociada a las llamadas a procedimientos remotos repetidas.

Una vez que un cliente invoca un procedimiento remoto que tiene un parámetro de canalización, el cliente y el servidor escriben bucles para transferir datos. Los datos se pueden generar en el cliente o en el servidor. En cualquier caso, la cantidad de datos (en bytes) no tiene que conocerse de antemano. Los datos se pueden producir o consumir de forma incremental. Mientras se encuentra en el bucle de transferencia de datos, el servidor llama a rutinas de código auxiliar que cargan o descargan un búfer de datos. El cliente llama a procedimientos definidos por el programador para asignar búferes, cargar datos en los búferes y descargarlos.

En esta sección se proporciona información general sobre el uso de canalizaciones para llamadas a procedimientos remotos. Presenta la información general en los temas siguientes:

Para obtener más información sobre la sintaxis y las restricciones de canalización, consulte canalización en la referencia del lenguaje MIDL. El programa de ejemplo PIPES del directorio samples\rpc del Kit de desarrollo de software de plataforma (SDK) muestra cómo usar canalizaciones [in,out] para transferir datos entre un cliente y un servidor.