Partilhar via


Ponteiros e RPC

É muito eficiente usar ponteiros como parâmetros da função C. O ponteiro custa apenas alguns bytes e pode ser usado para acessar uma grande quantidade de memória. No entanto, em um aplicativo distribuído, os procedimentos de cliente e servidor residem em espaços de endereço diferentes — eles podem estar em computadores diferentes. Portanto, o cliente e o servidor geralmente não têm acesso ao mesmo espaço de memória.

Quando um dos parâmetros do procedimento remoto é um ponteiro para um objeto, o cliente deve transmitir uma cópia desse objeto e seu ponteiro para o servidor. Se o procedimento remoto modifica o objeto através de seu ponteiro, o servidor retorna o ponteiro e sua cópia modificada.

O MIDL oferece atributos de ponteiro para minimizar a quantidade de sobrecarga necessária e o tamanho do seu aplicativo. Esta seção discute a finalidade e os usos dos atributos de ponteiro MIDL. Ele também apresenta informações sobre a manipulação de ponteiros em aplicativos RPC. Divide-se nos seguintes tópicos: