Socket .NET

giovedì 27 gennaio 2011 - 11.49
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  Windows 7  |  Visual Studio 2008

einsteinio Profilo | Newbie

Buongiorno a tutti,

ho un vecchio programma server che comunica tramite il protocollo UDP con diversi client (circa un centinaio). Utilizzando sempre la stessa porta il server invia messaggi ai client e resta in ascolto in attesa di ricevere qualcosa. il programma è scritto in .NET ma utilizza la vecchia libreria winsock di VB6. Leggendo in giro per la rete ho visto che tutti sconsigliano l'utilizzo di tale libreria in .NET e suggeriscono l'utilizzo di UdpClient della classe System.Net.Sockets. con winsock il socket UDP aveva un evento che si attivava alla ricezione di dati sulla porta configurata. in questo modo il programma è libero di eseguire altre funzioni mentre sta in ascolto sulla porta UDP. con UdpClient ho visto che c'è il metodo recive che attiva l'ascolto sulla porta ma blocca l'esecuzione di altro codice. Non c'è un modo per stare in ascolto sulla porta UDP in modo non bloccante (come con winsock) utilizzando i componenti .NET?

Grazie in anticipo per l'aiuto

Ciao

Paolo

StefanoRicci Profilo | Junior Member

non puoi creare due thread, uno per gestire l'ascolto sulla porta ed uno per le altre procedure?
--------------------------------------

IDE: Visual Studio 2008 Professional Edition
IDE: Visual Studio 2010 Express

einsteinio Profilo | Newbie

Ottima idea! non ho mai creato programmi multithreading perciò non ci avevo pensato... ora ci provo!

Grazie mille

Paolo
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5