PDComm.GemSpoolInfo
구조체
GemResult의 스풀링 세부 정보를 나타냅니다.
public readonly record struct GemSpoolInfo처리 필드는 이 결과에 대한 마지막 작업을 설명합니다. 이후의 GemEquipment.RetrySpoolDequeue는 이 결과가 아니라 끝점을 바꾸므로, 현재 스풀 상태는 GemEquipment.GetSpoolState로 확인합니다. 성공 확인은 로컬 증거일 뿐이며, 호스트는 장비가 변경을 영구 저장했다고 추론할 수 없습니다.
매개변수
| 이름 | 설명 |
|---|---|
RequestKind | GemRequestKind.SpoolConfigure, GemRequestKind.SpoolQuery, GemRequestKind.SpoolControl 또는 GemRequestKind.SpoolDelivery입니다. |
Command | GemRequestKind.SpoolControl이면 S6F23 요청의 RSDC이고, 다른 종류이면 GemSpoolCommand.Transmit(0)입니다. |
Durability | 이 결과를 통해 적용된 변경이 저장된 내구성 수준입니다. |
DeliveryProof | 전달 결과의 전달 증거입니다. |
PersistenceStatus | 이 결과에서 마지막으로 발생한 영구 저장 실패의 PdcommStatus 값이며, GemEquipment.ConfirmSpoolReply 후에도 계속 보입니다. 그 밖에는 0입니다. |
EntryId | 전달 결과이면 전달된 항목의 ID이고, 그 밖에는 0입니다. |
DeliveryAttempt | 전달 결과이면 전달의 시도 번호이고, 그 밖에는 0입니다. |
SelectionCount | 장비가 받은 S2F43 또는 호스트가 받은 S2F60에 있는 스트림 선택 수입니다. |
ErrorCount | 호스트가 받은 S2F44에 있는 스트림 오류 수입니다. |
IsRequest | 장비가 받은 S2F43, S2F59 또는 S6F23 요청이면 true입니다. |
Responded | 요청에 대한 응답을 보냈으면 true입니다. |
Acknowledgement | 확인 코드입니다. 수신한 S2F44의 RSPACK, 수신한 S6F24의 RSDA, 전달한 S5F1 또는 S6F11에 대한 응답의 ACKC5 또는 ACKC6, 또는 장비가 준비한 응답의 코드이며, 없으면 null입니다. |
Applied | 이 결과에 대한 마지막 작업이 스풀 변경을 설치했으면 true입니다. |
ReplyReady | 준비된 응답이 보관되어 있어 GemEquipment.RespondSpool이 요청을 다시 적용하지 않고 응답을 보내면 true입니다. |
ConfirmationRequired | 요청이 확인되지 않은 영구 저장으로 적용되어 응답이 GemEquipment.ConfirmSpoolReply까지 보류되면 true입니다. |
DeliveryCompleted | GemEquipment.CompleteSpoolDelivery가 이 전달 결과를 수락했으면 true입니다. |
DequeuePending | 성공은 수락되었지만 항목 제거가 실패했으면 true입니다. GemEquipment.RetrySpoolDequeue를 호출합니다. |
SuccessAccepted | 이 전달 결과에 대해 성공이 수락되었으면 true입니다. |
멤버
GemSpoolInfo
생성자
GemResult의 스풀링 세부 정보를 나타냅니다.
public GemSpoolInfo(GemRequestKind RequestKind, GemSpoolCommand Command, GemSpoolDurability Durability, GemSpoolDeliveryProof DeliveryProof, int PersistenceStatus, ulong EntryId, ulong DeliveryAttempt, nuint SelectionCount, nuint ErrorCount, bool IsRequest, bool Responded, byte? Acknowledgement, bool Applied, bool ReplyReady, bool ConfirmationRequired, bool DeliveryCompleted, bool DequeuePending, bool SuccessAccepted)처리 필드는 이 결과에 대한 마지막 작업을 설명합니다. 이후의 GemEquipment.RetrySpoolDequeue는 이 결과가 아니라 끝점을 바꾸므로, 현재 스풀 상태는 GemEquipment.GetSpoolState로 확인합니다. 성공 확인은 로컬 증거일 뿐이며, 호스트는 장비가 변경을 영구 저장했다고 추론할 수 없습니다.
매개변수
| 이름 | 설명 |
|---|---|
RequestKind | GemRequestKind.SpoolConfigure, GemRequestKind.SpoolQuery, GemRequestKind.SpoolControl 또는 GemRequestKind.SpoolDelivery입니다. |
Command | GemRequestKind.SpoolControl이면 S6F23 요청의 RSDC이고, 다른 종류이면 GemSpoolCommand.Transmit(0)입니다. |
Durability | 이 결과를 통해 적용된 변경이 저장된 내구성 수준입니다. |
DeliveryProof | 전달 결과의 전달 증거입니다. |
PersistenceStatus | 이 결과에서 마지막으로 발생한 영구 저장 실패의 PdcommStatus 값이며, GemEquipment.ConfirmSpoolReply 후에도 계속 보입니다. 그 밖에는 0입니다. |
EntryId | 전달 결과이면 전달된 항목의 ID이고, 그 밖에는 0입니다. |
DeliveryAttempt | 전달 결과이면 전달의 시도 번호이고, 그 밖에는 0입니다. |
SelectionCount | 장비가 받은 S2F43 또는 호스트가 받은 S2F60에 있는 스트림 선택 수입니다. |
ErrorCount | 호스트가 받은 S2F44에 있는 스트림 오류 수입니다. |
IsRequest | 장비가 받은 S2F43, S2F59 또는 S6F23 요청이면 true입니다. |
Responded | 요청에 대한 응답을 보냈으면 true입니다. |
Acknowledgement | 확인 코드입니다. 수신한 S2F44의 RSPACK, 수신한 S6F24의 RSDA, 전달한 S5F1 또는 S6F11에 대한 응답의 ACKC5 또는 ACKC6, 또는 장비가 준비한 응답의 코드이며, 없으면 null입니다. |
Applied | 이 결과에 대한 마지막 작업이 스풀 변경을 설치했으면 true입니다. |
ReplyReady | 준비된 응답이 보관되어 있어 GemEquipment.RespondSpool이 요청을 다시 적용하지 않고 응답을 보내면 true입니다. |
ConfirmationRequired | 요청이 확인되지 않은 영구 저장으로 적용되어 응답이 GemEquipment.ConfirmSpoolReply까지 보류되면 true입니다. |
DeliveryCompleted | GemEquipment.CompleteSpoolDelivery가 이 전달 결과를 수락했으면 true입니다. |
DequeuePending | 성공은 수락되었지만 항목 제거가 실패했으면 true입니다. GemEquipment.RetrySpoolDequeue를 호출합니다. |
SuccessAccepted | 이 전달 결과에 대해 성공이 수락되었으면 true입니다. |
Acknowledgement
속성
확인 코드입니다. 수신한 S2F44의 RSPACK, 수신한 S6F24의 RSDA, 전달한 S5F1 또는 S6F11에 대한 응답의 ACKC5 또는 ACKC6, 또는 장비가 준비한 응답의 코드이며, 없으면 null입니다.
public byte? Acknowledgement { get; init; }Applied
속성
이 결과에 대한 마지막 작업이 스풀 변경을 설치했으면 true입니다.
public bool Applied { get; init; }Command
속성
GemRequestKind.SpoolControl이면 S6F23 요청의 RSDC이고, 다른 종류이면 GemSpoolCommand.Transmit(0)입니다.
public GemSpoolCommand Command { get; init; }ConfirmationRequired
속성
요청이 확인되지 않은 영구 저장으로 적용되어 응답이 GemEquipment.ConfirmSpoolReply까지 보류되면 true입니다.
public bool ConfirmationRequired { get; init; }DeliveryAttempt
속성
전달 결과이면 전달의 시도 번호이고, 그 밖에는 0입니다.
public ulong DeliveryAttempt { get; init; }DeliveryCompleted
속성
GemEquipment.CompleteSpoolDelivery가 이 전달 결과를 수락했으면 true입니다.
public bool DeliveryCompleted { get; init; }DeliveryProof
속성
전달 결과의 전달 증거입니다.
public GemSpoolDeliveryProof DeliveryProof { get; init; }DequeuePending
속성
성공은 수락되었지만 항목 제거가 실패했으면 true입니다. GemEquipment.RetrySpoolDequeue를 호출합니다.
public bool DequeuePending { get; init; }Durability
속성
이 결과를 통해 적용된 변경이 저장된 내구성 수준입니다.
public GemSpoolDurability Durability { get; init; }EntryId
속성
전달 결과이면 전달된 항목의 ID이고, 그 밖에는 0입니다.
public ulong EntryId { get; init; }ErrorCount
속성
호스트가 받은 S2F44에 있는 스트림 오류 수입니다.
public nuint ErrorCount { get; init; }IsRequest
속성
장비가 받은 S2F43, S2F59 또는 S6F23 요청이면 true입니다.
public bool IsRequest { get; init; }PersistenceStatus
속성
이 결과에서 마지막으로 발생한 영구 저장 실패의 PdcommStatus 값이며, GemEquipment.ConfirmSpoolReply 후에도 계속 보입니다. 그 밖에는 0입니다.
public int PersistenceStatus { get; init; }ReplyReady
속성
준비된 응답이 보관되어 있어 GemEquipment.RespondSpool이 요청을 다시 적용하지 않고 응답을 보내면 true입니다.
public bool ReplyReady { get; init; }RequestKind
속성
GemRequestKind.SpoolConfigure, GemRequestKind.SpoolQuery, GemRequestKind.SpoolControl 또는 GemRequestKind.SpoolDelivery입니다.
public GemRequestKind RequestKind { get; init; }Responded
속성
요청에 대한 응답을 보냈으면 true입니다.
public bool Responded { get; init; }SelectionCount
속성
장비가 받은 S2F43 또는 호스트가 받은 S2F60에 있는 스트림 선택 수입니다.
public nuint SelectionCount { get; init; }SuccessAccepted
속성
이 전달 결과에 대해 성공이 수락되었으면 true입니다.
public bool SuccessAccepted { get; init; }