|
Dreamine.Communication.Core 1.0.2
Dreamine.Communication.Core 통신 기능과 관련 API를 제공합니다.
|


Public 멤버 함수 | |
| InMemoryOutboundMessageQueue (OutboundQueueOptions? options=null) | |
| ValueTask | EnqueueAsync (QueuedOutboundMessage message, CancellationToken cancellationToken=default) |
| ValueTask | EnqueueFrontAsync (QueuedOutboundMessage message, CancellationToken cancellationToken=default) |
| ValueTask< QueuedOutboundMessage?> | TryDequeueAsync (CancellationToken cancellationToken=default) |
| void | Clear () |
속성 | |
| int | Count [get] |
Private 멤버 함수 | |
| void | EnsureCapacityForAddToBack () |
| void | EnsureCapacityForAddToFront () |
Private 속성 | |
| readonly object | _sync = new() |
| readonly LinkedList< QueuedOutboundMessage > | _messages = new() |
| readonly OutboundQueueOptions | _options |
연결이 끊긴 동안 송신 대기 메시지를 메모리에 순서대로 보관합니다.
InMemoryOutboundMessageQueue.cs 파일의 13 번째 라인에서 정의되었습니다.
|
inline |
지정한 용량 및 초과 처리 설정으로 메모리 큐를 초기화합니다.
| options | 큐 용량과 초과 처리 설정입니다. null이면 기본값을 사용합니다. |
| ArgumentOutOfRangeException | 최대 큐 크기가 0 이하인 경우 발생합니다. |
InMemoryOutboundMessageQueue.cs 파일의 67 번째 라인에서 정의되었습니다.
다음을 참조함 : _options.
|
inline |
큐에 저장된 모든 메시지를 스레드 안전하게 제거합니다.
Dreamine.Communication.Core.Queues.IOutboundMessageQueue를 구현.
InMemoryOutboundMessageQueue.cs 파일의 301 번째 라인에서 정의되었습니다.
|
inline |
메시지를 큐 뒤쪽에 추가하며, 설정에 따라 가득 찬 큐의 가장 오래된 항목을 제거합니다.
| message | 저장할 송신 대기 메시지입니다. |
| cancellationToken | 추가 작업 취소 요청을 감시하는 토큰입니다. |
| ArgumentNullException | message 가 null인 경우 발생합니다. |
| InvalidOperationException | 큐가 가득 찼고 오래된 메시지 제거가 비활성화된 경우 발생합니다. |
| OperationCanceledException | 작업 취소가 요청된 경우 발생합니다. |
Dreamine.Communication.Core.Queues.IOutboundMessageQueue를 구현.
InMemoryOutboundMessageQueue.cs 파일의 154 번째 라인에서 정의되었습니다.
다음을 참조함 : _messages, _sync, EnsureCapacityForAddToBack().

|
inline |
재시도할 메시지를 큐 앞쪽에 다시 추가하며 필요하면 뒤쪽 항목을 제거합니다.
| message | 큐 앞쪽에 다시 저장할 메시지입니다. |
| cancellationToken | 추가 작업 취소 요청을 감시하는 토큰입니다. |
| ArgumentNullException | message 가 null인 경우 발생합니다. |
| InvalidOperationException | 큐가 가득 찼고 오래된 메시지 제거가 비활성화된 경우 발생합니다. |
| OperationCanceledException | 작업 취소가 요청된 경우 발생합니다. |
Dreamine.Communication.Core.Queues.IOutboundMessageQueue를 구현.
InMemoryOutboundMessageQueue.cs 파일의 226 번째 라인에서 정의되었습니다.
다음을 참조함 : _messages, _sync, EnsureCapacityForAddToFront().

|
inlineprivate |
큐 뒤쪽에 항목을 추가할 공간을 확보하고 설정에 따라 가장 오래된 항목을 제거합니다.
| InvalidOperationException | 큐가 가득 찼고 항목 제거가 비활성화된 경우 발생합니다. |
InMemoryOutboundMessageQueue.cs 파일의 325 번째 라인에서 정의되었습니다.
다음을 참조함 : _messages, _options.
다음에 의해서 참조됨 : EnqueueAsync().

|
inlineprivate |
큐 앞쪽에 항목을 추가할 공간을 확보하고 설정에 따라 가장 최근 항목을 제거합니다.
| InvalidOperationException | 큐가 가득 찼고 항목 제거가 비활성화된 경우 발생합니다. |
InMemoryOutboundMessageQueue.cs 파일의 356 번째 라인에서 정의되었습니다.
다음을 참조함 : _messages, _options.
다음에 의해서 참조됨 : EnqueueFrontAsync().

|
inline |
큐에서 가장 오래된 메시지를 제거해 반환합니다.
| cancellationToken | 꺼내기 작업 취소 요청을 감시하는 토큰입니다. |
null입니다.| OperationCanceledException | 작업 취소가 요청된 경우 발생합니다. |
Dreamine.Communication.Core.Queues.IOutboundMessageQueue를 구현.
InMemoryOutboundMessageQueue.cs 파일의 274 번째 라인에서 정의되었습니다.
|
private |
messages 값을 보관합니다.
InMemoryOutboundMessageQueue.cs 파일의 32 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : Clear(), EnqueueAsync(), EnqueueFrontAsync(), EnsureCapacityForAddToBack(), EnsureCapacityForAddToFront(), TryDequeueAsync().
|
private |
options 값을 보관합니다.
InMemoryOutboundMessageQueue.cs 파일의 41 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : EnsureCapacityForAddToBack(), EnsureCapacityForAddToFront(), InMemoryOutboundMessageQueue().
|
private |
sync 값을 보관합니다.
InMemoryOutboundMessageQueue.cs 파일의 23 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : Clear(), EnqueueAsync(), EnqueueFrontAsync(), TryDequeueAsync().
|
get |
현재 큐에 저장된 메시지 수를 스레드 안전하게 가져옵니다.
Dreamine.Communication.Core.Queues.IOutboundMessageQueue를 구현.
InMemoryOutboundMessageQueue.cs 파일의 87 번째 라인에서 정의되었습니다.