![]() |
1
3
嘿,您可以尝试并实现观察者模式,让相关方订阅工作线程(java.util.observable或类似的扩展)或管理观察者的另一个类。 您可以使用java.util.observer和java.util.observable 或者自己滚。 实现观察者模式的一些接口的简单示例:
|
![]() |
2
1
为什么不使用回调?启动后台任务时,将带有回调函数的对象传递给该任务,并让该任务以这种方式报告进度。没有任何相关的UI,您不需要更改线程来完成此操作。 |
![]() |
3
0
阿德里安和爱德华大帝的回答都是很好的选择。这完全取决于您希望“其他代码”如何使用状态更新。第三种选择是使用消息队列,后台线程将定期状态写入其中。一个真正通用的版本将使用JMS。 |
![]() |
4
0
我为此设计了一个简单的界面:
用法如下:
以及一个通用的实现,它应该是线程安全的:
这可以扩展到支持取消等等。 |
|
user29759326 · 如何返回递归函数中的最后一个值? 6 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 6 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 6 月前 |
![]() |
rudraraj · java中未声明最终变量 6 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 6 月前 |