Sdílet prostřednictvím


AsyncReaderWriterLock – třída

Pouze pro interní použití společnosti MicrosoftZámek blokování, které umožňuje souběžný přístup, výhradní přístup nebo souběžný přístup, který lze upgradovat na výhradní přístup.

Hierarchie dědičnosti

Object
  Microsoft.VisualStudio.Threading.AsyncReaderWriterLock
    Microsoft.VisualStudio.Threading.AsyncReaderWriterResourceLock<TMoniker, TResource>

Obor názvů:  Microsoft.VisualStudio.Threading
Sestavení:  Microsoft.VisualStudio.Threading (v Microsoft.VisualStudio.Threading.dll)

Syntaxe

'Deklarace
Public Class AsyncReaderWriterLock _
    Implements IHangReportContributor
public class AsyncReaderWriterLock : IHangReportContributor
public ref class AsyncReaderWriterLock : IHangReportContributor
type AsyncReaderWriterLock =  
    class 
        interface IHangReportContributor 
    end
public class AsyncReaderWriterLock implements IHangReportContributor

Typ AsyncReaderWriterLock zveřejňuje následující členy.

Konstruktory

  Název Popis
Veřejná metoda AsyncReaderWriterLock() Pouze pro interní použití společnosti MicrosoftInicializuje novou instanci AsyncReaderWriterLock.
Veřejná metoda AsyncReaderWriterLock(Boolean) Pouze pro interní použití společnosti MicrosoftInicializuje novou instanci syncReaderWriterLock, udávající, zda chcete strávit další zdroje informací o podrobné diagnostické informace.

Nahoru

Vlastnosti

  Název Popis
Chráněná vlastnost AmbientLock Pouze pro interní použití společnosti MicrosoftZíská uzamčení provedené spuštění kontextu volajícího.
Chráněná vlastnost CaptureDiagnostics Pouze pro interní použití společnosti MicrosoftUrčuje, zda další zdroje by měly vynaložit ke shromažďování informací, které by mohly být užitečné pro diagnostiku zablokování.
Veřejná vlastnost Completion Pouze pro interní použití společnosti MicrosoftZíská úkol, jehož dokončení signalizuje, že tento zámek nadále vydávat zámky.
Veřejná vlastnost IsAnyLockHeld Pouze pro interní použití společnosti MicrosoftUrčuje, zda jakýkoliv druh zámku je v držení volajícího a lze ihned použít daném kontextu volajícího.
Veřejná vlastnost IsAnyPassiveLockHeld Pouze pro interní použití společnosti MicrosoftUrčuje, zda jakýkoliv druh zámku je v držení volajícího, bez ohledu na kompatibilitu zámek kontextu volajícího.
Veřejná vlastnost IsPassiveReadLockHeld Určuje, zda volající bez ohledu na kompatibilitu zámek kontextu volajícího drží zámek pro čtení.
Veřejná vlastnost IsPassiveUpgradeableReadLockHeld Určuje, zda možné inovovat zámek pro čtení držení volajícího, bez ohledu na kompatibilitu zámek kontextu volajícího.
Veřejná vlastnost IsPassiveWriteLockHeld Určuje, zda je volající bez ohledu na kompatibilitu zámek kontextu volajícího držení uzamčení pro zápis.
Veřejná vlastnost IsReadLockHeld Pouze pro interní použití společnosti MicrosoftUrčuje, zda má volající zámek pro čtení.
Veřejná vlastnost IsUpgradeableReadLockHeld Pouze pro interní použití společnosti MicrosoftUrčuje, zda má volající že rozšiřitelný zámek pro čtení.
Veřejná vlastnost IsWriteLockHeld Pouze pro interní použití společnosti MicrosoftUrčuje, zda má volající uzamčení pro zápis.
Chráněná vlastnost SyncObject Pouze pro interní použití společnosti MicrosoftZíská objekt, který slouží k synchronizaci přístup k polím této instance.

Nahoru

Metody

  Název Popis
Veřejná metoda Complete Pouze pro interní použití společnosti MicrosoftZpůsobí, že se odmítne nové požadavky na nejvyšší úrovně uzamčení a Completion úloha přejde do dokončeného stavu poté, co byly uvolněny všechny vydané zámky.
Veřejná metoda Equals Určuje, zda je zadaný objekt rovna aktuální objekt. (Zděděno z Object.)
Chráněná metoda Finalize Umožňuje objektu k pokusu uvolnit prostředky a provádět další operace vyčištění před je zažádáno systémem uvolňování paměti. (Zděděno z Object.)
Chráněná metoda GetAggregateLockFlags Pouze pro interní použití společnosti MicrosoftZíská Souhrn příznaků zámek pro všechny vnořené zámky.
Veřejná metoda GetHashCode Slouží jako výchozí funkce hash. (Zděděno z Object.)
Veřejná metoda GetType Získá Type aktuální instance. (Zděděno z Object.)
Veřejná metoda HideLocks Pouze pro interní použití společnosti MicrosoftZabraňuje použití nebo viditelnost volajícího lock(s) dokud vrácená hodnota je odstraněna.
Chráněná metoda LockStackContains Pouze pro interní použití společnosti MicrosoftZkontroluje, zda souhrnné příznaky ze všech zámků v zásobníku zámek splňují zadané flag(s).
Chráněná metoda MemberwiseClone Vytvoří mělká kopie aktuálního Object. (Zděděno z Object.)
Chráněná metoda OnBeforeExclusiveLockReleasedAsync Pouze pro interní použití společnosti MicrosoftVyvolá se při poslední uzamčení pro zápis se uvolnit.
Chráněná metoda OnBeforeLockReleasedAsync Pouze pro interní použití společnosti MicrosoftVyvolá se při uvolnění zámek.
Veřejná metoda OnBeforeWriteLockReleased Pouze pro interní použití společnosti MicrosoftRegistruje zpětného volání, která je vyvolána při uzamčení pro zápis vnější držení volajícího se uvolnit.
Chráněná metoda OnCriticalFailure(Exception) Vyvolá se při uzamčení zjistí k vnitřní chybě nebo nelegální používání vzor, který označuje vážnou chybu, která by měla okamžitě hlášeny žádosti, a případně také zastavení procesu, aby se zabránilo zablokuje nebo poškození dat.
Chráněná metoda OnCriticalFailure(String) Vyvolá se při uzamčení zjistí k vnitřní chybě nebo nelegální používání vzor, který označuje vážnou chybu, která by měla okamžitě hlášeny žádosti, a případně také zastavení procesu, aby se zabránilo zablokuje nebo poškození dat.
Chráněná metoda OnExclusiveLockReleasedAsync Pouze pro interní použití společnosti MicrosoftVyvolá se po výhradní zámek uvolněn, ale před jinými zámek má spotřebitel možnost zadejte zámek.
Chráněná metoda OnUpgradeableReadLockReleased Pouze pro interní použití společnosti MicrosoftDochází, když se uvolní zámek pro čtení nejvyšší úrovně (rozšiřitelný) opustit žádné uzamčení pro zbývající (zápis).
Veřejná metoda ReadLockAsync Pouze pro interní použití společnosti MicrosoftZíská zámek pro čtení, asynchronně čeká na uzamčení, pokud není ihned k dispozici.
Veřejná metoda ToString Vrátí řetězec, který představuje aktuální objekt. (Zděděno z Object.)
Veřejná metoda UpgradeableReadLockAsync(CancellationToken) Pouze pro interní použití společnosti MicrosoftZíská zámek pro čtení, asynchronně čeká na uzamčení, pokud není ihned k dispozici.
Veřejná metoda UpgradeableReadLockAsync(AsyncReaderWriterLock.LockFlags, CancellationToken) Pouze pro interní použití společnosti MicrosoftZíská zámek pro čtení, asynchronně čeká na uzamčení, pokud není ihned k dispozici.
Veřejná metoda WriteLockAsync(CancellationToken) Pouze pro interní použití společnosti MicrosoftZíská uzamčení pro zápis, asynchronně čekají na uzamčení, pokud nejsou okamžitě k dispozici.
Veřejná metoda WriteLockAsync(AsyncReaderWriterLock.LockFlags, CancellationToken) Pouze pro interní použití společnosti MicrosoftZíská uzamčení pro zápis, asynchronně čekají na uzamčení, pokud nejsou okamžitě k dispozici.

Nahoru

Explicitní implementace rozhraní

  Název Popis
Explicitní implementace rozhraníSoukromá metoda IHangReportContributor.GetHangReport Vnitřní Microsoft pouze. data pro sestavy zablokuje.

Nahoru

Poznámky

Tato třída je vlastní awaitable místo úkolu {LockReleaser}, protože je třeba nastavit CallContext data v rámci přijímání zámku entity.Chcete-li provést kód musí být spuštěn na začátku pokračování (též dává).

Bezpečný přístup z více vláken

Všechny veřejné členy static (Shared v jazyce Visual Basic) tohoto typu jsou bezpečné pro přístup z více vláken. Není zaručeno, že členy instancí jsou bezpečné pro přístup z více vláken.

Viz také

Referenční dokumentace

Microsoft.VisualStudio.Threading – obor názvů