我的代码调用从Internet下载文件的API方法。由于下载可能需要花费大量时间,因此我希望用户能够在后台线程处理文件下载时关闭显示进度条的窗口时取消下载。
我不确定我是否可以控制API方法调用的代码,所以我假设我没有选项来通知此代码需要取消下载操作。
如果这个假设是正确的,我如何根据用户请求终止文件下载操作,而不必中止/中断或以其他方式终止执行实际文件下载的后台线程?
答案 0 :(得分:1)
我希望正确设计的文件下载方法可以中断。所以你需要中断正在进行下载的线程,这应该取消下载(该方法应该抛出InterruptedException)。
一旦您从下载线程中捕获到异常,您就可以决定要做什么,例如等待提交新文件下载(即不退出)。