这是我的问题:我有一个对话框,其中包含一些用户可以更改的参数(例如通过微调器).每次更改其中一个参数时,我都会根据新参数值启动一个线程来更新3D视图.如果用户在第一个线程工作时更改了另一个值(或者通过在微调器箭头上单击多次再次返回相同的值),我想中止第一个线程(以及更新3D视图)并启动一个新线程使用最新的参数值.
我怎么能这样做?
PS:run()我的线程方法中没有循环,因此检查标志不是一个选项:更新3D视图的线程基本上只调用一个执行时间很长的方法.我无法在此方法中添加任何标志,要求中止,因为我无法访问其代码.
我正在编写一段连接到服务器的代码,使用该连接生成一堆线程并执行一堆"东西".
在某些情况下,连接失败,我需要停止一切,并从头开始使用新对象.
我想在对象之后清理但是在线程上调用thread.stop,但是这个方法似乎已被弃用了.
这样做的推荐替代方案是什么?我应该为每个线程编写自己的清理和退出方法吗?将线程设置为null?或者是其他东西?