# ViDi2.Runtime.Remote.Client.Http.HttpControl

원격 서비스에 연결하려면, 먼저 ViDi2.Runtime.Remote.Client.Control을 인스턴스화하고, 이어서 서비스에 연결해야 합니다.

메서드
Control(IImageFactory imageFactory) | 주어진 IImageFactory로 클라이언트 런타임 컨트롤을 생성합니다. 이는 서비스에서 받은 이미지를 로드하는 데 이용됩니다. 로컬 컨트롤과 달리 LibraryAccess 개체를 전달할 필요가 없습니다. 원격 컨트롤은 자동으로 원격 LibraryAccess 개체를 생성하여 이용합니다. 일반적으로, 정상적으로 로컬 컨트롤을 이용한다면, 원격 컨트롤을 투명하게 이용할 수 있습니다.
void Connect(string uri) | 지정된 uri에 연결합니다. 여기에서 uri는 유효한 Deep Learning 서비스의 식별자입니다. uri는 "http://<ip>:<port>" 형식이며, 여기에서 <ip> 및 <port>는 사용하는 Deep Learning 서비스의 IP와 포트입니다. 이는 --http-address=http://address:port command line(명령줄) 매개변수 설정과 일치해야 합니다. 해당 서비스가 응답하지 않으면 이 메서드는 TimeoutException을 낼 수 있습니다. 또한, 컨트롤이 이미 서비스에 연결되어 있거나, 컨트롤은 런타임 컨트롤인데 서비스는 트레이닝 서비스라면, 예외를 낼 수 있습니다. 이 방법으로 연결에 실패하면, 해당 컨트롤을 삭제하고 새로운 컨트롤로 재접속을 시도해야 합니다. 프로세스에서 인스턴스화하는 컨트롤의 수는 제한이 없지만, 각 프로세스는 특정 서비스 실행에 하나의 컨트롤만을 연결할 수 있습니다.
속성
string ServiceUri | 컨트롤이 현재 연결된 uri를 반환하며, 컨트롤이 서비스에 연결되어 있지 않으면, null을 반환합니다.
bool IsConnected | Connect가 성공적으로 호출되면 참을 반환합니다.
IServiceInfos ServiceInfos | 컨트롤이 연결된 서비스에 대한 정보를 제공합니다. Connect가 성공적으로 호출된 후 사용할 수 있습니다.
IConnectionMonitor ConnectionMonitor | Connect가 성공적으로 호출된 후부터, 주기적으로 서비스를 ping하는 개체를 반환합니다. 이 개체가 게시하는 이벤트를 이용하면, 컨트롤과 서버의 연결을 모니터링할 수 있습니다.