Pipa (RPC)
Konstruktor jenis pipa adalah mekanisme yang sangat efisien untuk meneruskan data dalam jumlah besar, atau jumlah data apa pun yang tidak semuanya tersedia dalam memori pada satu waktu. Dengan menggunakan pipa, run time RPC menangani transfer data aktual, menghilangkan overhead yang terkait dengan panggilan prosedur jarak jauh berulang.
Setelah klien memanggil prosedur jarak jauh yang memiliki parameter pipa, klien dan server memasukkan perulangan untuk mentransfer data. Data dapat diproduksi di klien atau server. Bagaimanapun, jumlah data (dalam byte) tidak harus diketahui terlebih dahulu. Data dapat diproduksi atau dikonsumsi secara bertahap. Saat berada dalam perulangan transfer data, server memanggil rutinitas stub yang memuat atau membongkar buffer data. Klien memanggil prosedur yang ditentukan programmer untuk mengalokasikan buffer, memuat data ke dalam dan membongkar data dari buffer.
Bagian ini memberikan gambaran umum tentang penggunaan pipa untuk panggilan prosedur jarak jauh. Ini menyajikan gambaran umum dalam topik berikut:
- Terminologi Pipa Penting
- Status Pipa
- Menentukan Pipa dalam File IDL
- Implementasi Pipa Sisi Klien
- Implementasi Pipa Sisi Server
- Aturan untuk Beberapa Pipa
- Menggabungkan Parameter Pipa dan Nonpipe
Untuk informasi selengkapnya tentang sintaks dan batasan pipa, lihat pipa di Referensi Bahasa MIDL. Program sampel PIPES dalam sampel Platform Software Development Kit (SDK) \rpc directory menunjukkan cara menggunakan pipa [in,out] untuk mentransfer data antara klien dan server.