在 java 应用程序中,当用户点击下载时,建立远程连接并从远程下载内容是在单独的线程中完成的,屏幕上会弹出一个对话框以显示下载进度。现在对话框中添加了取消命令,以便为用户提供取消下载的选项。当用户点击取消按钮时,可以使用程序中的 dispose() 方法处理对话框,但是如何停止/杀死已经启动的线程?线程执行以下任务: 1.建立与远程的连接 2.从远程下载内容 3.将内容存储在本地(内容通过流传输) 请帮我解决这个问题
最佳答案
停止一个线程可能是错误的看待方式。桌面计算机上单个线程消耗的实际资源是无关紧要的。将其视为中止下载。
如果读取是阻塞的,那么这并不是什么大问题。您可以等到有一些数据后再不读取。一种更突然的方法是在流上调用 close
(从另一个线程)。
关于java - 停止线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1017259/