Machine hangs when UDP Server is set to free

  I am using Indy UDP server 8.0.
I am developing an application where i create UDP Server manually and then
free it.
I use the command :
if assigned(UDPServer) then
   UDPServer.Free ;

But if I click the button continously then while freeing the UDP Server the
application gets hunged up. For the first 5-6 Clicks it creates and Free UDP
server. But if it is for more number of times then the application gets
hunged up.
I have also tried UDPServer.Destroy but still doesn't work.
Can anyone tell me how whats the other method.

Dhiraj Jain.