public static async Task AsyncExclusiveLock()
        {
            var obj     = new object();
            var holder1 = await obj.AcquireLockAsync(TimeSpan.Zero);

            if (holder1)
            {
            }
            else
            {
                throw new Exception();
            }

            await ThrowsAsync <TimeoutException>(() => obj.AcquireLockAsync(TimeSpan.Zero));

            holder1.Dispose();
        }