Megosztás a következőn keresztül:


COM+ szinkronizálási fogalmak

Általában nincs szükség szinkronizálásra, ha egyszálas lakással (STA) rendelkezik, mert a lakás biztosítja a szinkronizálást. A szinkronizálás akkor válik fontossá, ha többszálú apartman modellel (MTA) és egy szabad szálú objektummal rendelkezik. A múltban a szabadszálú objektumoknak kezelniük kellett a zárolást. Az összetevő szinkronizálási attribútumának beállításával kiküszöbölheti a zárolás szükségességét.

A szinkronizálás a következő tulajdonságokkal rendelkezik:

  • Lehetővé teszi, hogy egy hívó egyszerre beírja az összetevőt.
  • Tiltja a folyamaton vagy a számítógépen keresztüli forgalmat.
  • Komponensről komponensre áramlik egy folyamaton belül.
  • Engedélyezi az újraküldést ugyanabból a hívóból.

A lakásokkal ellentétben a tevékenységek különböző folyamatokból és gazdagépekből származó környezeteket ölelnek fel. A szinkronizálás határozza meg, hogy melyik tevékenység tartalmaz objektumot. Az objektumok a következő tevékenységek bármelyikében lehetnek:

  • Alkotói tevékenység
  • Új tevékenység
  • Nincs tevékenység

A COM+ az egyes tevékenységekhez tartozó zárak sorozatával biztosítja az egyidejűséget. Ha egy hívó olyan COM+ szinkronizált összetevőt próbál meg megadni, amelyet egy másik hívó már használ, a hívás a zárolás feloldásáig le lesz tiltva. Ez a blokkolási viselkedés nem vezet időtúllépéshez, és nem konfigurálható időtúllépésre. Ha a zárolás nincs használatban, a zárolás megszerezhető, és a hívás feldolgozásra kerül. A lezárás után a zárolás feloldódik a következő hívó számára. A holtpont elkerülése érdekében a COM+ a hálózatba láncolt, beágyazott hívássorozatokkal kezeli az összes objektumhoz való hozzáférést a tevékenységek között.

A COM+ a következő szinkronizálási beállításokat biztosítja:

  • Fogyatékos
  • Nem támogatott
  • Támogatott
  • Szükséges
  • Újat igényel

Jegyzet

Egyes szinkronizálási beállítások más COM+ összetevőbeállításokkal együtt működnek. Például szinkronizálásra van szükség, ha az COM+ azonnali (JIT) aktiválási szolgáltatás engedélyezve van. A tranzakciók engedélyezéséhez JIT szükséges; ezért a COM+ tranzakciófeldolgozási szinkronizálást is igényel. A JIT=True beállítással rendelkező osztályoknak tehát a Synchronization=Required vagy a Synchronization=RequiredNew beállítással is rendelkezniük kell.

 

A szinkronizálási beállításokNak a Component Services felügyeleti eszköz használatával történő beállításával kapcsolatos utasításokért tekintse meg A szinkronizálási attribútum beállításacímű témakört.

A COM+ felügyeleti kódtár szinkronizálási beállításainak beállításával kapcsolatos további információkért lásd A COM+ felügyeletiautomatizálása című témakört.

COM+ szinkronizálási feladatok