Connect 方法用于将进程连接到位于指定套接字地址和端口的检测服务器。
int RiCOSConnectionPort_Connect(
RiCOSConnectionPort *const me,
const char* const SocketAddress,
unsigned int nSocketPort);
me
这是 RiCOSConnectionPort 对象。
SocketAddress
这是套接字地址。缺省值为 NULL。
nSocketPort
这是套接字的端口号。缺省值为 0。
连接状态。可能的值如下所示:
RiCOSResult RiCOSConnectionPort_Connect(
RiCOSConnectionPort * const me,
const char* const SocketAddress,
unsigned int nSocketPort)
{
if (me==NULL) return 0;
if (NULL == me->m_dispatchfunc) {
fprintf(stderr, "RiCOSConnectionPort_SetDispatcher
is called before
RiCOSConnectionPort_Connect()\n");
return 0;
}
if ( 0 == me->m_Connected ) {
(void)RiCOSSocket_init(&me->m_Socket);
me->m_Connected = RiCOSSocket_createSocket(
&me->m_Socket,SocketAddress,nSocketPort);
}
if (0 == me->m_Connected)
return 0;
/* Connection established invoking thread to
receive messages from the socket */
me->m_ConnectionThread = RiCOSTask_create((
void (*)(void *))readFromSockLoop,
(void *)me,"tRhpSock",RiCOSDefaultStackSize);
RiCOSTask_start(me->m_ConnectionThread);
return me->m_Connected;
}