=== Summary: 675 files | 7 generated | 484 fresh | 4605 untracked | 4268 adopted | 355 marked | 466 validated-ok | 2+0 stale (sig+body) | 0 skipped | 0 failed | elapsed 11:08:11.442 (40091.44s) ===
This commit is contained in:
@@ -8,6 +8,10 @@ namespace adas_core.Application.Services.Caching
|
||||
/// CacheService lo usará para evitar condiciones de carrera en GetOrSet.
|
||||
/// Funciona igual para locks locales o distribuidos.
|
||||
/// </summary>
|
||||
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
|
||||
/// "Constructor parameter 'logger' (ILogger<LockManagerService>) is not documented." -->
|
||||
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
|
||||
/// "Constructor parameter 'provider' (ILockProvider) is not documented." -->
|
||||
public class LockManagerService(
|
||||
ILogger<LockManagerService> logger,
|
||||
ILockProvider provider)
|
||||
@@ -15,6 +19,18 @@ namespace adas_core.Application.Services.Caching
|
||||
/// <summary>
|
||||
/// Ejecuta una función que devuelve un valor bajo un lock por clave.
|
||||
/// </summary>
|
||||
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
|
||||
/// "Parameter 'key' is not documented" -->
|
||||
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
|
||||
/// "Parameter 'timeout' is not documented" -->
|
||||
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
|
||||
/// "Parameter 'action' is not documented" -->
|
||||
/// <!-- aidoc-review:v1 severity=medium kind=missing_param
|
||||
/// "Parameter 'cancellationToken' is not documented" -->
|
||||
/// <!-- aidoc-review:v1 severity=medium kind=missing_returns
|
||||
/// "Method returns Task<T> via action delegate, but no <returns> tag is present" -->
|
||||
/// <!-- aidoc-review:v1 severity=medium kind=missing_exception
|
||||
/// "TimeoutException is thrown when the lock cannot be acquired within the timeout, but no <exception> tag is present" -->
|
||||
public async Task<T> WithLockAsync<T>(
|
||||
string key,
|
||||
TimeSpan timeout,
|
||||
@@ -57,6 +73,7 @@ namespace adas_core.Application.Services.Caching
|
||||
/// <summary>
|
||||
/// Version Task (sin valor).
|
||||
/// </summary>
|
||||
/// <!-- aidoc:v1 sig=3facc4e body=59bc0c3 -->
|
||||
public Task WithLockAsync(
|
||||
string key,
|
||||
TimeSpan timeout,
|
||||
@@ -77,6 +94,7 @@ namespace adas_core.Application.Services.Caching
|
||||
/// <summary>
|
||||
/// Libera el lock y registra posibles errores sin interrumpir el flujo.
|
||||
/// </summary>
|
||||
/// <!-- aidoc:v1 sig=88f2f04 body=608f118 -->
|
||||
private async Task SafeReleaseAsync(string key)
|
||||
{
|
||||
try
|
||||
|
||||
Reference in New Issue
Block a user