Hátrányai

A folyamaton belüli kiszolgálók a helyi kiszolgáló szerkesztési funkciójával biztosítják az objektumkezelő sebesség- és méretelőnyét. Miért választaná az OLE-alkalmazást helyi kiszolgálóként, nem pedig folyamaton belüli kiszolgálóként? Több oka is van:

  • Biztonság. Csak egy helyi kiszolgáló rendelkezik az ügyfél címterével. A folyamaton belüli kiszolgálók megosztják az ügyfél címterét és folyamatkörnyezetét, ezért a hibák vagy rosszindulatú programozás miatt kevésbé robusztusak lehetnek.
  • Finomsága. A helyi kiszolgálók számos különböző ügyfélen üzemeltethetik az objektum több példányát, és több ügyfél objektumai között oszthatják meg a kiszolgáló állapotát oly módon, hogy az bonyolult vagy lehetetlen lenne, ha folyamatközi kiszolgálóként implementálnák, ami egyszerűen egy DLL, amely az egyes ügyfelekbe töltődik be.
  • Kompatibilitás. Ha egy folyamaton belüli kiszolgáló implementálása mellett dönt, lemond az OLE 1 kompatibilitásáról, amely nem támogatja az ilyen kiszolgálókat. Ez sok fejlesztő számára nem fog megfontolni, de ha igen, akkor kritikus fontosságú.
  • Nem lehet támogatni a hivatkozásokat. A folyamaton belüli kiszolgáló nem szolgálhat hivatkozásforrásként. Mivel a DLL önmagában nem futtatható, nem hozhat létre csatolásra kívánt fájlobjektumot.

A hátrányok ellenére a folyamaton belüli kiszolgáló kiváló választás lehet a sebességéhez és méretéhez – ha minden más követelménynek megfelel.

Előnyök

In-Process kiszolgálók