| |
2-2 ParallelitätscService V1.0 April 2000 2 Verriegelungen werden auf Verriegelungssätzen erworben. Zwei Sätze Betriebe werden durch zur Verfügung gestellt Die Schnittstelle LockSetFactory zum Verursachen von Verriegelungssätzen, man stellt eine eingestellte Verriegelung her, die benutzt werden kann durch die Klienten, die im impliziten Modus funktionieren (das LockSet Schnittstelle), die andere verursacht a Verriegelung eingestellt für transactional Klienten des ausdrücklichen Modus (das TransactionalLockSet Schnittstelle). Zusätzlich das LockCoordinator Schnittstelle wird zur Verfügung gestellt, um einem Klienten zu erlauben, alle freizugeben Verriegelungen hielten durch eine spezifische Verhandlung. Die folgenden Abschnitte definieren die Arten und die Ausnahmen, die für beide Arten von allgemein sind schließen Sie, die Schnittstellen selbst an und beschreibt die Verantwortlichkeiten eines Benutzers für HandhabenVerhandlung-dauerverriegelungen. OMG IDL für das CosConcurrencyControl Modul. # schließen Sie < CosTransactions.idl > mit ein Modul CosConcurrencyControl { enumlock_mode { gelesen, schreiben Sie, Aufsteigen, intention_read, intention_write }; Ausnahme LockNotHeld{ }; Schnittstelle LockCoordinator { leeres drop_locks(); }; Schnittstelle LockSet { leerer lock(inlock_modemodus); Boolescher try_lock(inlock_modemodus); leerer unlock(inlock_modemodus) raises(LockNotHeld); leeres change_mode(inlock_modeheld_mode, im lock_modenew_mode) raises(LockNotHeld); Get_coordinator(LockCoordinator in CosTransactions::Coordinator das); }; Schnittstelle TransactionalLockSet { leerer Strom des lock(in CosTransactions::Coordinator, im lock_modemodus); Boolescher Strom des try_lock(in CosTransactions::Coordinator, im lock_modemodus); |  |
|
| |
|
|