 ~Sockets~
|
Tutorial de la C++ Socket library
|
|
Usando DisplaySocket como un Cliente
Client implementation
Cuando estamos usando una clase Socket class como cliente, el método
Open() es usado para conectar con otro host / programa. Cuando la conexión
es establecida, el método OnConnect() es llamado por SocketHandler. cuando
un objeto Socket es creado dinámicamente y entregado a SocketHandler,
el método SetDeleteByHandler() es llamado para "asegurar" la
correcta liberación de memoria por SocketHandler, liberando la memoria
utilizada por el Socket cuando sea "de-seleccionado" de la lista de
sockets.
Un objeto tipo Socket es entregado a SocketHandler mediante el método
Add(). El / o Socket's añadidos al handler no son inmediatamente añadidos
a la lista-de-sockets- y no saldrán en la llamada al SocketHandler con
el método GetCount() (el cual retorna el nº de sockets en la lista-de-sockets).
Por ultimo, Select() es llamado una vez antes de obtener la lista con GetCount().
El bucle while() loop continuará hasta que el SocketHandler borre el
objeto Socket .
displayclient.cpp
#include "DisplaySocket.h"
#include <SocketHandler.h>
int main()
{
SocketHandler h;
DisplaySocket *p = new DisplaySocket(h);
p -> SetDeleteByHandler();
p -> Open("localhost", 9002);
h.Add(p);
h.Select(1,0);
while (h.GetCount())
{
h.Select(1,0);
}
}
|
|
|