Show / Hide Table of Contents

    Class SlimLock

    A SemaphoreSlim based lock implementation

    Inheritance
    Object
    Disposable
    SlimLock
    Implements
    IDisposable
    Inherited Members
    Disposable.Dispose()
    Disposable.IsDisposed
    Object.ToString()
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: Microsoft.Graph.Communications.Common
    Assembly: Microsoft.Graph.Communications.Common.dll
    Syntax
    public sealed class SlimLock : Disposable, IDisposable

    Constructors

    SlimLock()

    Declaration
    public SlimLock()

    Methods

    Dispose(Boolean)

    Protected implementation of dispose. This will be triggered only once regardless if manually disposed or garbage collected.

    Declaration
    protected override void Dispose(bool disposing)
    Parameters
    Type Name Description
    Boolean disposing

    true to release both managed and unmanaged resources; false to release only unmanaged resources.

    Overrides
    Disposable.Dispose(Boolean)

    Lock()

    Acquire a disposable lock

    Declaration
    public IDisposable Lock()
    Returns
    Type Description
    IDisposable

    Disposable cleanup to release semaphore.

    LockAsync()

    Acquire a disposable lock

    Declaration
    public Task<IDisposable> LockAsync()
    Returns
    Type Description
    Task<IDisposable>

    Disposable cleanup to release semaphore.

    Implements

    System.IDisposable

    Extension Methods

    AdditionalDataExtensions.SetInAdditionalData(Object, String, Object)
    Extensions.Pin(Object)
    Extensions.ChangeType(Object, Type)
    Extensions.ChangeType<T>(Object)
    Extensions.TryDispose(Object, IGraphLogger)
    ReflectionUtils.GetPropertyUsingReflection(Object, String)
    ReflectionUtils.SetPropertyUsingReflection(Object, String, Object)
    Validator.IsNull(Object, String, String)
    Validator.NotNull<T>(T, String, String)
    Validator.Equals<T>(T, T, String, String)
    Validator.Equals<T, TE>(T, T, String)
    Validator.NotEquals<T>(T, T, String, String)
    Back to top Copyright (c) Microsoft Corporation. All rights reserved.