예제 #1
0
        private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
        {
            BackgroundWorker worker = sender as BackgroundWorker;

            while (!backgroundWorker1.CancellationPending)
            {
                object[] portAndListenerAndReply = e.Argument as object[];
                Int32    port = int.Parse(portAndListenerAndReply[0].ToString());

                chatListener = portAndListenerAndReply[1] as TCPListener;

                var incomingMessages = chatListener.Listen(port);
                foreach (string[] dataForUI in incomingMessages)
                {
                    worker.ReportProgress(1, dataForUI);
                }
            }
        }
예제 #2
0
        private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
        {
            BackgroundWorker worker = sender as BackgroundWorker;


            while (!backgroundWorker1.CancellationPending)
            {
                Int32 port = int.Parse(e.Argument.ToString());
                worker.ReportProgress(0, "Stop listening");
                tCPListener = new TCPListener();

                var incomingConnections = tCPListener.Listen(port);
                foreach (string[] dataForUI in incomingConnections)
                {
                    worker.ReportProgress(1, dataForUI);
                }
            }
        }