Udostępnij za pośrednictwem


Potoki (RPC)

Konstruktor typu potoku jest wysoce wydajnym mechanizmem przekazywania dużych ilości danych lub dowolnej ilości danych, które nie są jednocześnie dostępne w pamięci. Korzystając z potoku, czas wykonywania RPC obsługuje rzeczywisty transfer danych, eliminując obciążenie związane z powtarzającymi się zdalnymi wywołaniami procedur.

Po wywołaniu przez klienta procedury zdalnej, która ma parametr potoku, klient i serwer wprowadzają pętle w celu transferu danych. Dane można wygenerować na kliencie lub serwerze. Tak czy inaczej ilość danych (w bajtach) nie musi być znana z wyprzedzeniem. Dane mogą być tworzone lub zużywane przyrostowo. W pętli transferu danych serwer wywołuje procedury wycinków, które ładują lub zwalniają bufor danych. Klient wywołuje procedury zdefiniowane przez programistę, aby przydzielić, załadować dane do i zwolnić je z tych.

Ta sekcja zawiera omówienie używania potoków do zdalnych wywołań procedur. Zawiera on omówienie w następujących tematach:

Aby uzyskać więcej informacji na temat składni i ograniczeń potoku, zobacz potoku w dokumentacji języka MIDL. Przykładowy program PIPE w przykładach zestawu SDK (Platform Software Development Kit)\rkatalogu pc pokazuje, jak używać potoków [w,out] do przesyłania danych między klientem a serwerem.