|
Dreamine.PLC.Mitsubishi.MC 1.0.1
Dreamine.PLC.Mitsubishi.MC 산업 자동화 및 I/O 기능을 제공합니다.
|


Public 멤버 함수 | |
| async Task< PlcResult > | ConnectAsync (string host, int port, int timeoutMs, CancellationToken cancellationToken=default) |
| async Task< PlcResult > | DisconnectAsync (CancellationToken cancellationToken=default) |
| async Task< PlcResult< byte[]> > | SendAndReceiveAsync (IReadOnlyList< byte > requestFrame, int receiveTimeoutMs, int retryCount, CancellationToken cancellationToken=default) |
| async ValueTask | DisposeAsync () |
속성 | |
| bool | IsConnected [get] |
Private 멤버 함수 | |
| Task | CloseCoreAsync () |
| void | ThrowIfDisposed () |
정적 Private 멤버 함수 | |
| static async Task< byte[]> | ReceiveBinary3EFrameAsync (NetworkStream stream, CancellationToken cancellationToken) |
| static async Task | ReadExactlyAsync (NetworkStream stream, byte[] buffer, CancellationToken cancellationToken) |
Private 속성 | |
| readonly SemaphoreSlim | _syncLock = new(1, 1) |
| TcpClient? | _tcpClient |
| NetworkStream? | _stream |
| bool | _disposed |
Mitsubishi MC 프로토콜용 TCP 전송을 제공합니다.
TcpMitsubishiMcTransport.cs 파일의 14 번째 라인에서 정의되었습니다.
|
inlineprivate |
내부 TCP 스트림과 클라이언트를 닫고 참조를 지웁니다.
TcpMitsubishiMcTransport.cs 파일의 520 번째 라인에서 정의되었습니다.
다음을 참조함 : _stream, _tcpClient.
다음에 의해서 참조됨 : ConnectAsync(), DisconnectAsync().

|
inline |
제한 시간 내 대상 TCP 끝점에 연결합니다.
| host | 호스트입니다. |
| port | 포트입니다. |
| timeoutMs | 제한 시간입니다. |
| cancellationToken | 취소 토큰입니다. |
| ArgumentException | 호스트가 비어 있는 경우 발생합니다. |
| OperationCanceledException | 동기화 잠금 대기 중 취소된 경우 발생합니다. |
Dreamine.PLC.Mitsubishi.MC.Transport.IMitsubishiMcTransport를 구현.
TcpMitsubishiMcTransport.cs 파일의 120 번째 라인에서 정의되었습니다.
다음을 참조함 : _stream, _syncLock, _tcpClient, CloseCoreAsync(), IsConnected, ThrowIfDisposed().

|
inline |
TCP 스트림과 클라이언트를 닫습니다.
| cancellationToken | 취소 토큰입니다. |
| OperationCanceledException | 잠금 대기 중 취소된 경우 발생합니다. |
Dreamine.PLC.Mitsubishi.MC.Transport.IMitsubishiMcTransport를 구현.
TcpMitsubishiMcTransport.cs 파일의 209 번째 라인에서 정의되었습니다.
다음을 참조함 : _syncLock, CloseCoreAsync().
다음에 의해서 참조됨 : DisposeAsync().


|
inline |
연결과 동기화 리소스를 비동기 해제합니다.
TcpMitsubishiMcTransport.cs 파일의 355 번째 라인에서 정의되었습니다.
다음을 참조함 : _disposed, _syncLock, DisconnectAsync().

|
inlinestaticprivate |
버퍼가 찰 때까지 스트림을 반복해서 읽습니다.
| stream | 스트림입니다. |
| buffer | 대상 버퍼입니다. |
| cancellationToken | 취소 토큰입니다. |
| IOException | 버퍼가 차기 전에 연결이 닫힌 경우 발생합니다. |
TcpMitsubishiMcTransport.cs 파일의 483 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : ReceiveBinary3EFrameAsync().

|
inlinestaticprivate |
Binary 3E 헤더와 선언된 길이의 본문을 정확히 읽습니다.
| stream | 네트워크 스트림입니다. |
| cancellationToken | 취소 토큰입니다. |
| InvalidOperationException | 응답 데이터 길이가 2 미만인 경우 발생합니다. |
| IOException | 응답 도중 원격 연결이 닫힌 경우 발생합니다. |
TcpMitsubishiMcTransport.cs 파일의 413 번째 라인에서 정의되었습니다.
다음을 참조함 : ReadExactlyAsync().
다음에 의해서 참조됨 : SendAndReceiveAsync().


|
inline |
Binary 3E 요청을 보내고 길이 헤더에 따라 완전한 응답을 읽습니다.
| requestFrame | 요청 프레임입니다. |
| receiveTimeoutMs | 수신 제한 시간입니다. |
| retryCount | TCP에서 사용하지 않는 재시도 수입니다. |
| cancellationToken | 취소 토큰입니다. |
| ArgumentNullException | 요청이 null인 경우 발생합니다. |
| OperationCanceledException | 잠금 대기 중 취소된 경우 발생합니다. |
Dreamine.PLC.Mitsubishi.MC.Transport.IMitsubishiMcTransport를 구현.
TcpMitsubishiMcTransport.cs 파일의 285 번째 라인에서 정의되었습니다.
다음을 참조함 : _stream, _syncLock, _tcpClient, ReceiveBinary3EFrameAsync(), ThrowIfDisposed().

|
inlineprivate |
전송이 이미 해제되었으면 예외를 발생시킵니다.
| ObjectDisposedException | 해제된 경우 발생합니다. |
TcpMitsubishiMcTransport.cs 파일의 554 번째 라인에서 정의되었습니다.
다음을 참조함 : _disposed.
다음에 의해서 참조됨 : ConnectAsync(), SendAndReceiveAsync().

|
private |
disposed 값을 보관합니다.
TcpMitsubishiMcTransport.cs 파일의 51 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : DisposeAsync(), ThrowIfDisposed().
|
private |
stream 값을 보관합니다.
TcpMitsubishiMcTransport.cs 파일의 42 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : CloseCoreAsync(), ConnectAsync(), SendAndReceiveAsync().
|
private |
sync Lock 값을 보관합니다.
TcpMitsubishiMcTransport.cs 파일의 24 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : ConnectAsync(), DisconnectAsync(), DisposeAsync(), SendAndReceiveAsync().
|
private |
tcp Client 값을 보관합니다.
TcpMitsubishiMcTransport.cs 파일의 33 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : CloseCoreAsync(), ConnectAsync(), SendAndReceiveAsync().
|
get |
TCP 클라이언트와 스트림의 연결 여부를 가져옵니다.
Dreamine.PLC.Mitsubishi.MC.Transport.IMitsubishiMcTransport를 구현.
TcpMitsubishiMcTransport.cs 파일의 61 번째 라인에서 정의되었습니다.
다음에 의해서 참조됨 : ConnectAsync().