在只有对象句柄的条件下,如何回收线程对象? 首先你先把对象从Vector里面移除,然后把那个对象赋为null我们所能做的也就是这些了,至于jvm什么时候来回收垃圾,我们也不知道 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 但是我我调试了一个线程对象: class A extends Thread { public void run() { while(true) { System.out.println("aaa"); } }public static void main(String[] args){ A a=new A(); a.start(); a=null;}//程序根本不终止,不停的输出"aaa";//我需要只根据对象句柄(其它的条件无法知道),来回收该对象. 原来你是这样的问题啊那刚才我是理解错了以前有个stop()方法,不过现在被Deprecated现在你就用a.destroy()吧 to jFresH_MaN()(AbsolutelyFresh)(java欣人) 不行呀。首先:所有对象都放在Vector 里面,根本就不知道哪是线程对象,哪是其它的对象。其次;对于:3.对象里面包含了线程对象CLASS C{Thread cc;}Vecotr 里面包存的只是C 对象句柄。 那就很难处理了你在这个Vector里面所有可能的类里面都加一个destroy()方法,然后在里面实现相应的方法比如CLASS C{Thread cc;public void destroy() { cc.destroy();}}你以后只要先把对象从Vector里面移除,然后调用destroy()方法 简便的方法可以像楼上说的,定义Destroyable接口interface Destroyable{ abstract public void destroy();}然后让放入vector中的对象都实现这个接口 求教:xml schema定义子元素 请教各位:java的一个程序是否可以执行两个线程,而这两个线程执行的内容不一样 java swing中的控件有没有隐藏之后不占位置的属性 类继承的机制问题,高手请进! 关于无参构造方法结构。 新手,在线等。。。。。。。。。。。 各位大虾能不能指教一下JTree的用法,谢谢 命名管道,解士一下? 两个问题,一个树,一个线程? ie为什么找不到最新编译过的class文件? Container与Panel(或JPanel)有何区别? Applet打包成jar的问题
class A extends Thread
{
public void run()
{
while(true)
{
System.out.println("aaa");
}
}
public static void main(String[] args)
{
A a=new A();
a.start();
a=null;
}
//程序根本不终止,不停的输出"aaa";
//我需要只根据对象句柄(其它的条件无法知道),来回收该对象.
那刚才我是理解错了
以前有个stop()方法,不过现在被Deprecated
现在你就用a.destroy()吧
不行呀。
首先:所有对象都放在Vector 里面,根本就不知道哪是线程对象,哪是其它的对象。
其次;
对于:3.对象里面包含了线程对象
CLASS C
{
Thread cc;
}
Vecotr 里面包存的只是C 对象句柄。
你在这个Vector里面所有可能的类里面都加一个destroy()方法,然后在里面实现相应的方法
比如
CLASS C
{
Thread cc;
public void destroy() {
cc.destroy();
}
}
你以后只要先把对象从Vector里面移除,然后调用destroy()方法
interface Destroyable{
abstract public void destroy();
}
然后让放入vector中的对象都实现这个接口