Thank you. Please will you point me to where I can read up on this. I have no idea how to "send the email asynchronously use a thread"
Taazz that is nonsense. Every code in even a scripting language will outperform the connection speed. I have a speed of about 100Gb (on-line, and somewhat stable). The code can process at least a 100 times more.
So far you agree with me. I'll wait for you to point me to the nonsense part.
Thank you. Please will you point me to where I can read up on this. I have no idea how to "send the email asynchronously use a thread"
Asynchronous sockets is a windows concept and not a very popular one. If your application is for windows only then you could try using Internet Component Suite by Francois Piette which a suite much like indy but it uses non blocking sockets instead of blocking. Or you could avoid all this, write a TThread class that, by its nature, executes in parallel with the rest of your application and send your email through it.
Be warned multi threading programming has a steep learning curve, having said that you have to remember one thing when you start multi threading,
do not access variables/object outside the thread class. If there is something you might need pass it to the thread before it starts executing if you want to inform your main application for the progress do it after it has finished executing.
There are a couple of libraries that might make the task easier like mtprocs, PasMP(fpc, lazarus) AsyncCalls, OmniThreadLibrary (delphi) but the above rule is universal.
In any case a tutorial on simple threading is to big for a forum post. Search the wiki it has the basics documented including basic information for the mtproc library