Kanály (RPC)
Konstruktor typu kanálu je vysoce efektivní mechanismus pro předávání velkých objemů dat nebo libovolného množství dat, která nejsou v paměti najednou k dispozici. Pomocí kanálu zpracovává doba běhu RPC skutečný přenos dat a eliminuje režii spojenou s opakovanými voláními vzdálené procedury.
Jakmile klient vyvolá vzdálenou proceduru s parametrem kanálu, klient a server zadávají smyčky pro přenos dat. Data lze vytvořit na klientovi nebo na serveru. V obou směrech nemusí být množství dat (v bajtech) předem známé. Data je možné vytvořit nebo využívat přírůstkově. Ve smyčce přenosu dat volá server rutiny zástupných procedur, které načítají nebo odkládají vyrovnávací paměť dat. Klient volá programátorem definované procedury pro přidělování vyrovnávacích pamětí, načítání dat do vyrovnávacích pamětí a jejich uvolnění z vyrovnávacích pamětí.
Tato část obsahuje přehled použití kanálů pro vzdálená volání procedur. Obsahuje přehled v následujících tématech:
- základní terminologie kanálu
- stav potrubí
- definování kanálů v souborů IDL
- Client-Side implementace kanálu
- Server-Side implementace kanálu
- Pravidla pro více kanálů
- kombinování parametrů potrubí a nepipe
Další informace o syntaxi a omezeních kanálu najdete v tématu v referenční dokumentaci jazyka MIDL. Ukázkový program PIPES v ukázkách sady SDK (Platform Software Development Kit)\rpc adresář ukazuje, jak používat [in,out] kanály pro přenos dat mezi klientem a serverem.