Condividi tramite


Puntatori e RPC

È molto efficiente usare i puntatori come parametri di funzione C. Il puntatore costa solo pochi byte e può essere usato per accedere a una grande quantità di memoria. Tuttavia, in un'applicazione distribuita, le procedure client e server risiedono in spazi indirizzi diversi, che possono trovarsi in computer diversi. Pertanto, il client e il server in genere non hanno accesso allo stesso spazio di memoria.

Quando uno dei parametri della routine remota è un puntatore a un oggetto, il client deve trasmettere una copia di tale oggetto e il relativo puntatore al server. Se la routine remota modifica l'oggetto tramite il relativo puntatore, il server restituisce il puntatore e la relativa copia modificata.

MIDL offre attributi del puntatore per ridurre al minimo la quantità di overhead richiesto e le dimensioni dell'applicazione. In questa sezione vengono illustrati lo scopo e gli usi degli attributi del puntatore MIDL. Vengono inoltre presentate informazioni sulla gestione dei puntatori nelle applicazioni RPC. È suddiviso negli argomenti seguenti: