首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

线程被阻塞,怎么处理

2011-12-28 
线程被阻塞,怎么办有如下代码frame.servernewserverAgent(5155)while(true){try{frame.server.sleep(300

线程被阻塞,怎么办
有如下代码
frame.server   =   new   serverAgent(5155);
               
                  while(true)   {
               
               
                try   {
                frame.server.sleep(3000);
                }
                catch(InterruptedException   ie)   {
               
                }
                frame.thread.run();
               
                try   {
                Thread.sleep(5000);
                }
                catch(InterruptedException   ie)   {
               
                }
                }
但是我在实例化服务器对象时,后面的线程就阻塞了,请问怎样解决这个问题,如果有实例给出解决方法最好,谢谢

[解决办法]
frame.thread.run();
---------------------
应该是frame.thread.start();吧
[解决办法]
尝试一下,在需要线程阻塞的地方用:
synchronized (sLock) {
try {
sLock.wait();
} catch (InterruptedException e) {

}
}

需要唤醒的时候调用
synchronized (sLock) {
sLock.notify();
}


而sLock可以声明并初始化为Object对象

热点排行