|
Dreamine.Logging 1.0.2
Dreamine.Logging 프로젝트의 API와 구성 요소를 제공합니다.
|


Public 멤버 함수 | |
| AsyncQueueSink (IDreamineLogSink inner, int capacity=8192, int drainBatchSize=256) | |
| void | Write (DreamineLogEntry entry) |
| async Task | ShutdownAsync (TimeSpan timeout) |
| async ValueTask | DisposeAsync () |
| void | Dispose () |
속성 | |
| long | DroppedCount [get] |
Private 멤버 함수 | |
| async Task | RunAsync () |
Private 속성 | |
| readonly IDreamineLogSink | _inner |
| readonly Channel< DreamineLogEntry > | _channel |
| readonly CancellationTokenSource | _cts = new() |
| readonly Task | _workerTask |
| readonly int | _drainBatchSize |
| long | _droppedCount |
| int | _disposed |
동기 로그 출력을 제한된 백그라운드 큐로 감쌉니다.
호출자는 비차단으로 항목을 큐에 넣고 단일 워커가 내부 출력으로 전달합니다. 큐가 차면 가장 오래된 항목을 버립니다.
AsyncQueueSink.cs 파일의 27 번째 라인에서 정의되었습니다.
|
inline |
내부 출력과 큐 설정으로 T:Dreamine.Logging.Sinks.AsyncQueueSink를 초기화합니다.
| inner | 항목을 전달할 동기 출력입니다. |
| capacity | 최대 대기 항목 수입니다. |
| drainBatchSize | 내부 출력과 큐 설정으로 T:Dreamine.Logging.Sinks.AsyncQueueSink를 초기화합니다. |
| ArgumentNullException | inner 가 null인 경우 발생합니다. |
| ArgumentOutOfRangeException | 용량 또는 배치 크기가 0 이하인 경우 발생합니다. |
AsyncQueueSink.cs 파일의 151 번째 라인에서 정의되었습니다.
다음을 참조함 : _channel, _drainBatchSize, _inner, _workerTask, RunAsync().

|
inline |
기본 제한 시간으로 큐를 동기 종료하고 오류를 억제합니다.
AsyncQueueSink.cs 파일의 398 번째 라인에서 정의되었습니다.
다음을 참조함 : ShutdownAsync().

|
inline |
기본 제한 시간으로 큐를 종료하고 리소스를 비동기 해제합니다.
AsyncQueueSink.cs 파일의 385 번째 라인에서 정의되었습니다.
다음을 참조함 : ShutdownAsync().

|
inlineprivate |
큐를 배치 단위로 비우고 내부 출력에 전달하는 전용 워커를 실행합니다.
AsyncQueueSink.cs 파일의 252 번째 라인에서 정의되었습니다.
다음을 참조함 : _channel, _cts, _drainBatchSize, _inner.
다음에 의해서 참조됨 : AsyncQueueSink().

|
inline |
새 항목 수락을 중지하고 대기 항목이 처리될 때까지 기다립니다.
| timeout | 워커 종료를 기다릴 최대 시간입니다. |
AsyncQueueSink.cs 파일의 315 번째 라인에서 정의되었습니다.
다음을 참조함 : _channel, _cts, _disposed, _inner, _workerTask.
다음에 의해서 참조됨 : Dispose(), DisposeAsync().

|
inline |
로그 항목을 비차단 방식으로 백그라운드 큐에 추가합니다.
| entry | 추가할 로그 항목입니다. |
| ArgumentNullException | entry 가 null인 경우 발생합니다. |
로그 항목을 비차단 방식으로 백그라운드 큐에 추가합니다.
Dreamine.Logging.Interfaces.IDreamineLogSink를 구현.
AsyncQueueSink.cs 파일의 219 번째 라인에서 정의되었습니다.
다음을 참조함 : _channel, _disposed, _droppedCount.
|
private |
channel 값을 보관합니다.
AsyncQueueSink.cs 파일의 46 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : AsyncQueueSink(), RunAsync(), ShutdownAsync(), Write().
|
private |
|
private |
disposed 값을 보관합니다.
AsyncQueueSink.cs 파일의 91 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : ShutdownAsync(), Write().
|
private |
drain Batch Size 값을 보관합니다.
AsyncQueueSink.cs 파일의 73 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : AsyncQueueSink(), RunAsync().
|
private |
|
private |
inner 값을 보관합니다.
AsyncQueueSink.cs 파일의 37 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : AsyncQueueSink(), RunAsync(), ShutdownAsync().
|
private |
worker Task 값을 보관합니다.
AsyncQueueSink.cs 파일의 64 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : AsyncQueueSink(), ShutdownAsync().
|
get |
큐가 가득 차서 버려진 항목 수를 가져옵니다.
AsyncQueueSink.cs 파일의 101 번째 라인에서 정의되었습니다.