日期:2014-05-20  浏览次数:20948 次

怎么销毁java中的线程呢?
怎么才能销毁java中的线程呢?我进行多线程访问服务器的操作,每次假如创建5条线程,访问服务器结束之后,会再次的创建线程,久而久之,我访问服务器的数据很多的时候,就会跟着创建很多的线程,造成了内存溢出,我该怎么销毁线程呢?从而使内存不会溢出?
java自带的线程池,似乎也有这个问题啊,我现在遇到的是不知道是因为内存溢出了,还是Executors自己的问题,造成软件运行一段时间后不能创建新的线程了
------解决方案--------------------
线程运行完毕会自动销毁啊。

我的job,一天会生成500个线程,都是自己销毁的。

你的问题可能不在线程这里,要么就是线程中打开了文件,连接了数据库而没有释放资源导致的
------解决方案--------------------
引用:
我试过用线程池,不知道为何,运行了一段时间之后,就会不运行了


说明程序存在问题,也许是死锁、死循环、所依赖资源被锁死(比如数据库死锁了)、无限等待外部响应(没有设置超时)等。

建议用调试模式执行,当发现“就会不运行了”的时候,暂停整个进程,然后观察各线程都停在什么位置了,然后再单步走一走看看死循环在什么地方了。