Table of Contents

Class ThreadRunGuard

Namespace
Oscova.Agents.Conversations
Assembly
Oscova.Agents.dll

Coordinates one active chat run per user thread across every channel.

public sealed class ThreadRunGuard

Inheritance

Inherited Members

Methods

Acquire(string, string, string)

Reserves the thread's run slot, or returns null when another run holds it.

AcquireAsync(string, string, string, CancellationToken)

Waits for and reserves the thread's run slot.

Cancel(string, string)

Signals the active run for the thread to stop and returns its run id.

CancelAndAcquireUserAsync(string, CancellationToken)

Cancels and drains every active run for one exact user while blocking new admissions.

CancelExact(string, string, string)

Cancels only the matching active run without affecting a replacement run.

CancelOrDefer(string, string, string)

Cancels the matching run or records that exact run for its pending admission.

GetActiveRunId(string, string)

Gets the active run id for the thread without acquiring or releasing its guard.