比如设一个成员变量
private Thread t;
然后在线程函数中
t = Thread.CurrentThread;那么你想终止就调用
t.Abort();

解决方案 »

  1.   

    ThreadPool.QueueUserWorkItem(new WaitCallback(关联方法));在线程池中的,线程怎么abort?
      

  2.   

    看不懂我说的?private Thread t;void FUN(object obj)
    {
    t = Thread.CurrentThread;
    ....
    }ThreadPool.QueueUserWorkItem(new WaitCallback(FUN));t.Abort();如果这样还不明白,那没人能帮你了
      

  3.   

    没有使用过线程池,不过看不明白楼上的回复。你这样是结束哪个线程是可以被控制的么?估计楼主是要指定线程来结束。那就是已经有了Thread引用了?还有。一个函数,启动n个。楼上方法就不可以了吧。
      

  4.   

    一个函数,启动n个。楼上方法就不可以了吧。
    =====================有一种技术叫做数组、链表两颗星星了就不必我再多废话了吧?这方法不好,居然弹出一文档 正在终止线程?
    ---------------------------好好看看msdn,强行终止是会抛异常的,所以你要吸收掉这个异常。不用理会。
      

  5.   

    我是调用一个委托类会出现 弹出一文档 正在终止线程。
     Public WithEvents 线程连接 As New 线程连接
    因为在线程完成时,要设一个事件的需要。正常情况下,这方法是可以的,但不知为什么上面那个方法,会弹出一文档?
      

  6.   

    Thread.Abort ()  在调用此方法的线程上引发 ThreadAbortException,以开始终止此线程的过程。调用此方法通常会终止线程。  摘自msdn。
      

  7.   

    哦。你的意思。自己吧Thread对象保存个队列是吧。看明白了。之前看你写个专门的一个方法。还以为是运行时候通过什么来判断,结束呢。
      

  8.   

    http://blog.csdn.net/wuyazhe/archive/2006/11/09/1375082.aspx
    看看我blog里的这个方法。
    如果你有很多的线程,用这个方法可以很灵活的控制你的线程状态。我在线程里实现了一个仿制的消息队列。你看看能否有点用吧。最好还是不要用Abort。万不得已,也就想办法加个标记,设置标记状态来停止线程。
      

  9.   

    wuyazhe(经常答错,欢迎指正。) :你好,请教一个问题,我用线程池调用WebRequest类搜索十几
    个网页,速度很快,cpu占用率也很低,但是我要结束这些线程时(上面那位老兄提供的方法)
    速度极慢,而且cpu占用率很高,请问有什么好的解决方法?