473,386 Members | 1,745 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

Problem with increasing threads when communicating with UDP Socket

I have written an application using VB.Net 2003 which contains a single timer
control (Interval set to 5 seconds) and a function which uses the
BeginReceiveFrom Socket function.

The problem I am having is that everytime the timer runs and calls the
function which sends and receives data through the UDP protocol, it increases
the systems thread count by 1.

After the software running for around 1 hour windows cracks it as I am using
too many threads.

Does anybody know why this is happening and hope I can stop it??

CODE:

Public Sub UDPTest()

' Create endpoint
remoteIpEndPoint = New System.Net.IPEndPoint(System.Net.IÂ*
PAddress.Parse('192.168.10.200'), Â* 100)

' Create a UDP scoket for sending data
udpSocket = New Socket(AddressFamily.InterNetwork,Â* SocketType.Dgram,
ProtocolType.Udp)

' Connect UDP Socket to device
udpSocket.Connect(remoteIpEnÂ* dPoint)

' Check if writeable then send data request to device
If udpSocket.Poll(-1, SelectMode.SelectWrite) Then
udpSocket.Send(sendBytes, sendBytes.Length, SocketFlags.None)
End If

udpSocket.BeginReceiveFrom(bÂ* ytes, 0, bytes.Length, SocketFlags.None,
remoteIpEndPoint, New AsyncCallback(AddressOf OnReceive), Nothing)

Console.Write(Encoding.ASCIIÂ* .GetString(bytes))

End Sub

Public Sub OnReceive(ByVal ar As IAsyncResult)
On Error GoTo ErrorHandle
Dim iBytes As Integer = udpSocket.EndReceiveFrom(ar, remoteIpEndPoint)
ErrorHandle:
End Sub
Nov 22 '05 #1
0 846

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: Tero Saarni | last post by:
Hi, I have several threads communicating with each other using events stored in Queues. Threads block on Queue.get() until somebody publishes an event in thread's event queue. I need to add...
0
by: Gonçalo Rodrigues | last post by:
Hi, I have a problem with threads and sockets. I'll try to describe the problem in words with pseudo-code. I've been working on a few classes to make it easier to work with threads. This...
0
by: Rod Stephenson | last post by:
I am developing an engineering application for modelling multiphase flows in large pipe networks, and have just discovered the joy of pyopengl for 3D visualization. However the incantation I'm...
0
by: Gavin Williams | last post by:
I am working on a multi-threaded server for a Windows 2000 system and since "fork" doesn't work that great in a Win32 environment, I am trying to use use the "threads" module instead. When a...
0
by: David Dolheguy | last post by:
I have written an application using VB.Net 2003 which contains a single timer control (Interval set to 5 seconds) and a function which uses the BeginReceiveFrom Socket function. The problem I am...
2
by: jgbid | last post by:
Hi, I'm trying to build an IP Scanner inc c# for a specific port (80) and for specific IP Ranges. For example 24.36.148.1 to 24.36.148.255 My first step was to use TcpClient, but there are...
2
by: mastermagrath | last post by:
Hi all, I recently finished a small project using perl and tk/tcl which caused me several headaches. I have now decided to have a go at VB .net and thought a good place to start would be...
1
by: Philip Zigoris | last post by:
Hi all, I have written a socket based service in python and under fairly heavy traffic it performs really well. But i have encountered the following problem: when the system runs out of file...
3
by: Simon Dean | last post by:
Hi, I believe I have a website (I didn't do the original coding) which uses JavaScript/ASP to generate cookies. It's a shopping cart application called UCart I believe. The technologies...
167
by: darren | last post by:
Hi I have to write a multi-threaded program. I decided to take an OO approach to it. I had the idea to wrap up all of the thread functions in a mix-in class called Threadable. Then when an...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.