Java 运行不确定的线程会导致内存泄漏吗?

Java 运行不确定的线程会导致内存泄漏吗?,java,multithreading,Java,Multithreading,我有一个j2ee应用程序,里面有一个类1,它启动多个线程T1、T2、T3。现在我还有一个WebService。现在我想要我的线程T1、T2、T3,应该独立运行,直到停止Web服务器或取消部署我的应用程序。我的线程在内部连接到一些URL,并执行一些操作和与db相关的其他TAK 1) 现在,启动线程的代码是从servletContextListener调用的。我在tomcat控制台上看到一个警告,它可能会导致内存泄漏。会有任何问题吗? 2) 从我的线程连接到porrt 80上其他服务器上的URL。

我有一个j2ee应用程序,里面有一个类1,它启动多个线程T1、T2、T3。现在我还有一个WebService。现在我想要我的线程T1、T2、T3,应该独立运行,直到停止Web服务器或取消部署我的应用程序。我的线程在内部连接到一些URL,并执行一些操作和与db相关的其他TAK

1) 现在,启动线程的代码是从servletContextListener调用的。我在tomcat控制台上看到一个警告,它可能会导致内存泄漏。会有任何问题吗?

2) 从我的线程连接到porrt 80上其他服务器上的URL。这会与我的本地端口冲突吗?

内存泄漏是由活动内容引起的。线程导致内存泄漏的可能性并不比主程序导致内存泄漏的可能性大


但是,通过使用多个线程,未混合的压力源的可能性会增加

创建线程之类的资源可能会导致内存泄漏。但是,如果需要创建固定数量的线程,则不必考虑内存泄漏。

< P> 95%,我确信任何线程长时间运行或不能够经历内存泄漏。内存泄漏与GC和终结有关,而与线程无关

仅仅因为您以端口80的连接为目标并不意味着您从端口80启动通信。因为服务器始终必须在端口80上响应,并且您只能在端口80上侦听或发送,而不能同时在端口80上侦听或发送。传输必须来自其他端口。因此,它不会与本地端口冲突。

1)不会。长时间运行线程不会导致内存溢出。例外只有当您忘记在该线程中关闭资源、释放内存等

2) 否。服务器在端口80上通信。客户没有