GpioChangeReader 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
GPIO(범용 I/O) 핀 값이 변경될 때 고해상도 타임스탬프가 배치되는 커널 모드와 사용자 모드 간의 공유 순환 버퍼를 나타냅니다.
public ref class GpioChangeReader sealed : IClosable
/// [Windows.Foundation.Metadata.Activatable(Windows.Devices.Gpio.IGpioChangeReaderFactory, 196608, "Windows.Devices.DevicesLowLevelContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Devices.DevicesLowLevelContract, 196608)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class GpioChangeReader final : IClosable
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Devices.Gpio.IGpioChangeReaderFactory), 196608, "Windows.Devices.DevicesLowLevelContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Devices.DevicesLowLevelContract), 196608)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class GpioChangeReader : System.IDisposable
function GpioChangeReader(pin, minCapacity)
Public NotInheritable Class GpioChangeReader
Implements IDisposable
- 상속
- 특성
- 구현
Windows 요구 사항
디바이스 패밀리 |
Windows 10 Creators Update (10.0.15063.0에서 도입되었습니다.)
|
API contract |
Windows.Devices.DevicesLowLevelContract (v3.0에서 도입되었습니다.)
|
설명
커널 모드는 핀 값이 변경될 때 버퍼에 타임스탬프를 배치하고 사용자 모드는 버퍼에서 항목을 제거합니다. 오버플로는 버퍼에 추가 타임스탬프를 배치할 공간이 더 이상 없을 때 발생합니다. 오버플로 시 추가 이벤트가 기록되지 않으며 IsOverflowed 속성은 true를 반환합니다.
이 클래스는 스레드로부터 안전 하지 않습니다. 여러 스레드에서 이 클래스의 함수를 동시에 호출하면 예기치 않은 결과가 발생합니다.
생성자
GpioChangeReader(GpioPin) |
지정된 핀과 연결된 새 GpioChangeReader를 만듭니다. 특정 시간에 단일 GpioChangeReader만 핀과 연결할 수 있습니다. |
GpioChangeReader(GpioPin, Int32) |
지정된 핀 및 변경 레코드에 대해 지정된 최소 용량과 연결된 새 GpioChangeReader를 만듭니다. 특정 시간에 단일 GpioChangeReader만 핀과 연결할 수 있습니다. |
속성
Capacity |
GpioChangeReader에서 한 번에 저장할 수 있는 최대 변경 레코드 수를 가져옵니다. |
IsEmpty |
판독기에서 현재 변경 레코드가 없는지 여부를 가져옵니다. |
IsOverflowed |
버퍼가 가득 차서 변경 레코드를 판독기 버퍼에 배치하지 못했는지 여부를 가져옵니다. |
IsStarted |
핀 변경 기록이 현재 활성 상태인지 여부를 가져옵니다. |
Length |
현재 변경 판독기의 레코드 수를 가져옵니다. |
Polarity |
기록될 전환의 극성을 가져오거나 설정합니다. 고정 변경 기록이 시작되지 않은 경우에만 극성이 변경될 수 있습니다. |
메서드
Clear() |
판독기 버퍼에서 모든 변경 레코드를 삭제합니다. |
Close() |
변경 판독기를 닫고 연결된 메모리 버퍼를 해제하고 해당 핀에서 판독기를 연결 해제합니다. |
Dispose() |
관리되지 않는 리소스의 확보, 해제 또는 다시 설정과 관련된 애플리케이션 정의 작업을 수행합니다. |
GetAllItems() |
판독기 버퍼의 현재 항목을 모두 제거하고 반환합니다. |
GetNextItem() |
판독기 버퍼에서 가장 일찍 삽입된 변경 레코드를 검색하고 제거합니다. |
PeekNextItem() |
판독기 버퍼에서 이전에 삽입한 변경 레코드를 제거하지 않고 검색합니다. |
Start() |
핀 극성의 변경 내용을 기록하기 시작합니다. 이 메서드는 변경 기록이 아직 활성화되지 않은 경우에만 호출할 수 있습니다. |
Stop() |
핀 극성에서 변경 내용 기록을 중지합니다. 이 메서드는 변경 기록이 현재 활성 상태인 경우에만 호출할 수 있습니다. |
WaitForItemsAsync(Int32) |
버퍼가 최소 개수 이상의 항목 수로 채워질 때까지 기다립니다. 이때 비동기 작업이 완료됩니다. 이 작업은 취소할 수 있습니다. |