3 instantiations of FileLock
Aspire.Dashboard (3)
src\Shared\FileLock.cs (3)
49
return new
FileLock
(CreateLockStream(lockPath));
68
return new
FileLock
(CreateLockStream(lockPath));
119
return new
FileLock
(CreateLockStream(lockPath));
23 references to FileLock
Aspire.Dashboard (23)
ServiceClient\DashboardRunStore.cs (17)
83
private readonly
FileLock
? _runLock;
138
var
runLock = OpenRequiredRunLock(
159
var
resumeRunLock = OpenRequiredRunLock(
221
using
var
runLock = TryOpenRunLock(directory);
273
using
var
runLock = storedRun.IsCurrent || storedRun.IsLeased
341
var
runLock = TryOpenRunLock(runDirectory);
383
using
var
runLock = TryOpenRunLock(directory);
468
using
var
runLock = TryOpenRunLock(directory);
506
private static
FileLock
OpenRunLock(string runDirectory)
509
return
FileLock
.Acquire(GetRunLockPath(runDirectory));
512
private static
FileLock
OpenRequiredRunLock(string runDirectory, string errorMessage)
524
private static
FileLock
? TryOpenRunLock(string runDirectory)
526
var
runLock =
FileLock
.TryAcquire(GetRunLockPath(runDirectory));
614
private sealed class RunLease(DashboardRunStore owner, DashboardRunDescriptor run,
FileLock
runLock) : IDisposable
616
private
FileLock
? _runLock = runLock;
622
var
runLock = Interlocked.Exchange(ref _runLock, null);
src\Shared\FileLock.cs (6)
45
public static
FileLock
Acquire(string lockPath)
57
/// <returns>A <see cref="
FileLock
"/> that releases the lock when disposed.</returns>
59
public static
FileLock
Acquire(string lockPath, TimeSpan timeout)
85
public static
FileLock
? TryAcquire(string lockPath)
104
/// <returns>A <see cref="
FileLock
"/> that releases the lock when disposed.</returns>
106
public static async Task<
FileLock
> AcquireAsync(string lockPath, CancellationToken cancellationToken = default, TimeSpan? timeout = null)