Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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:
- podstawowa terminologia potoku
- stanu potoku
- definiowanie potoków w plikach IDL
- Client-Side implementacji potoku
- Server-Side implementacji potoku
- reguły dla wielu potoków
- łączenie parametrów potoku i nonpipe
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.