Thread.Abort does not guarantee that the thread will terminate. For example, if you have a long request, Abort will not stop the request or cancel the stream. In fact, the thread will run until the request completes.
If you do everything in managed code and are not locked by unmanaged resources, and you must interrupt the thread, thread.Abort () works fine.
However, you cannot invoke Start on a thread that has been interrupted. You will need to create another thread and call "Start" in this thread. Creating a theme is somewhat more expensive, the memory is reasonable in .NET (compared to other langauges), so there are some disadvantages.
source share