改变线程的状态而退出?  我不是很明白你的意思   但直觉上你应该用线程池的方法有很多线程的threadPool都可以拿来用的, 比较简单的一个你也许可以参考一下QUARTZ项目里面实现的一个比较简单的线程池

解决方案 »

  1.   

    to huangry(凯撒):
    跟线程池没有关系,
    我的思路是这样子的:
    编写一个从Thread类继承的子类,该子类有一个状态变量m_Mode,值为:Ready,Running,Stopping,Stopped
    run函数的实现为:
    while ((m_Mode == Running) or (m_Mode = Stopping))
    {
    if (m_Mode == Running)
    {
      //阻塞函数
      //其它调用
    }
    else
    {
     sleep(...);
    }
    }你看明白了吗??
      

  2.   

    你会用synchronized吗?这个可以解决线程阻塞的。
      

  3.   

    to javafounder(漂流):
    怎样判断是否处理阻塞状态呀??to gg0767(gg0767):
    究竟如何解决呢??我急呀,这位大虾请了~~~~
      

  4.   


    要看你调用的阻塞函数是什么,如果是InputStream的read()的话,可以试试用InputStream的close来让read()方法退出阻塞状态;如果是ServerSocket的accept()方法的话,可以用ServerSocket的close方法。如果是你自己写的阻塞函数的话,那你应该清楚怎样让它退出阻塞状态。
      

  5.   

    to muymuy(muy):
    高,我倒没起到这招,明天试试~~~