读书人

线程被阻塞怎么处理

发布时间: 2011-12-28 22:45:21 作者: rapoo

线程被阻塞,怎么办
有如下代码
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对象

读书人网 >J2SE开发

热点推荐