none
1 Servidor sockets y varios clientes + hilos RRS feed

  • Pregunta

  • Hola, estoy realizando un servidor sockets en C#, y quiero que varios clientes se conecten. Para ello cada vez que se conecta un cliente creo un nuevo hilo. Hasta ahí todo perfecto, el problema surge cuando tengo que modificar unos label, el tema es que como son hilo me da error porque no pertenece al hilo principal. Lo cual para solucionar creo un delegado pero en esa parte del código se queda sin hacer nada.

            delegate void SetTextCallback(string text);
            private void SetText(string text)
            {
                // InvokeRequired required compares the thread ID of the
                // calling thread to the thread ID of the creating thread.
                // If these threads are different, it returns true.
                if (label1.InvokeRequired)
                {
                    SetTextCallback d = new SetTextCallback(SetText);
                    this.Invoke(d, new object[] { text });
                }
                else
                {
                    this.label1.Text = text;
                }
            }

    No se porque será, si creo un hilo y lo hago sin sockets funciona bien. Alguien tiene alguna idea?. Desde ya muchas gracias.

    lunes, 7 de marzo de 2016 12:45