He escrito un servidor TCPIP que implementa un FileSystemWatcher y llena una cola con datos analizados de archivos nuevos adquiridos por el FSW.¿Debo cerrar un socket (TCPIP) después de cada transacción?
Un único cliente se conectará a este servidor y solicitará datos de la cola (ningún otro cliente deberá conectarse en ningún momento). Si no existen datos, el cliente esperará (1 segundo) e intentará de nuevo.
Tanto el cliente como el servidor están escritos de forma asíncrona. Mi pregunta es: ¿debe el cliente crear un nuevo socket para cada transacción (dentro del ciclo while) o simplemente dejar el socket abierto (fuera del ciclo while)?
client.Connect()
while(bCollectData)
{
... communicate ...
Thread.Sleep(1000);
}
client.Shutdown(SocketShutdown.Both);
client.Close();