Allora Salve.....

Durante la programmazione di un server capace di dialogare con piu client contemporaneamente è sorto un "piccolo" problema....

Penso che i thread facciano confusione tra di loro!

Sono passato da poco al .net....comunque....

Il codice agisce in questo modo...

Avvia il server creando due nuovi oggetti Server(tcpListener) e Client(tcpClient)

codice:
    Public Sub AvviaServer()

        Server = New TcpListener(System.Net.IPAddress.Any, _ServerInfo.Port)
        Client = New TcpClient

        Server.Start()

        _StatoServer = StatoServer.sON

    End Sub
Poi Attendende una connessione

codice:
    Public Sub AttendiConnessione()


            If Server.Pending = True Then

                Client = Server.AcceptTcpClient
                StartNewThread()

            End If

    End Sub
StartNewThread() crea un nuovo Thread in questo modo:

codice:
    Public Sub StartNewThread()

        _Thread = New Thread(AddressOf Me.GetData)
        _Thread.Name = CType(ct, String)
        _Thread.Start()

    End Sub
Listato di GetData

codice:
    Public Sub GetData()


        While 0 < 1

            Thread.Sleep(1000)


            Dim _NetworkStream As NetworkStream = Client.GetStream
            Dim _Byte(Client.ReceiveBufferSize) As Byte



            _NetworkStream.Read(_Byte, 0, CType(Client.ReceiveBufferSize, Integer))

            Dim _Data As String = Encoding.ASCII.GetString(_Byte)

            If _Byte(0) <> 0 Then


                MsgBox(_Data, , Thread.CurrentThread.Name)
                MsgBox("mmm")
                Generale.Writelog(_Data, Color.Black, Priorità.alta)

            End If

        End While


    End Sub
Per provarlo ho creato un piccolo client che si collega al server e invia a comando una stringa...

Cosa succede?Il client si connette ed invia normalmente la stringa...ma al collegarsi di un'altro client, il client precedente invia stringhe per un'altra volta e poi non succede piu nulla, come se nn inviasse nulla!mentre il client collegato per ultimo funziona normalmente finche non si collega un altro client!

Mi è sembrato l'approccio piu logico ma evidentemente non è corretto se potete aiutarmi....

Buona serata.