我有一个java applet类,它实现了runnable。在这个类的run()方法中,我调用了repaint()。 run方法的内容包含在一个无限循环中。在applet类的init()中,我使用new Thread(this).start()
来启动第二个线程。我的问题是,如果从run()方法调用repaint()将发出主线程执行paint()的信号,或者paint()将作为第二个线程的一部分执行。如果前者,那么第二个线程是否会继续其循环而不等待(如果可能)执行paint()?从java小程序中的非主线程调用repaint()
0
A
回答
0
技术上,事件调度线程是它自己的线程,从推出小程序(主)线分开。
重绘过程由RepaintManager
调度。简短的回答基本上是,RepaintManager
将安排在事件调度线程上进行重绘。
是否安全直接从一个单独的线程中调用repaint
?它会认为这不是好习惯。
作为事业的问题,我倾向于宁可谨慎的侧面,简单地确保与UI的所有交互,并不管到美国东部时间同步。节省了大量的第二个猜测,恕我直言
我的理解是,repaint
通常被认为是线程安全的。这并不意味着它将继续如此。
相关问题
- 1. Repaint()不在线程中调用
- 2. 从java中的Runnable线程调用主线程
- 3. Java线程,从主
- 4. 主线程中的queue.join()调用对非主线程有什么作用?
- 5. glfwInit()从非主线程
- 6. 是否有可能从Java中的工作者线程调用主线程?
- 7. 从Java servlet调用线程
- 8. 主线程没有调用堆栈的Java线程转储? (jsvc)
- 9. 从Eclipse运行应用程序时未调用repaint()?
- 10. 从工作线程调用主线程回调函数
- 11. 从辅助线程使用主线程的调用方法
- 12. 应用程序中的Java小程序
- 13. 如何从Java中的工作线程访问主线程?
- 14. 如何从非UI线程调用Snackbar.make()?
- 15. 如何从主线程上的线程调用方法?
- 16. 从主线程中的子类线程执行回调
- 17. 多线程Java小程序弹跳球
- 18. 从PHP调用Java程序
- 19. 从java调用sql程序
- 20. 从多线程程序调用系统()
- 21. 从非主线程Android网络mainmainthreadexception
- 22. AysncTask - 从主UI调用线程
- 23. 为什么从主线程调用槽?
- 24. UIKeyboardTaskQueue只能从主线程调用
- 25. 非线程共享库非线程应用程序
- 26. 从多线程客户端调用独立Java程序
- 27. 停止从主线程主线程
- 28. Java中,线程主要LWJGL
- 29. 整个Java应用程序成为从Java线程的C函数调用
- 30. Java中的多线程应用程序?
感谢您的回答,但它并没有真正回答我的问题。 =/ – fvgs 2013-05-01 01:03:22
答案是 - 不依赖于它一直是线程安全的,并作出努力,从美国东部时间(如果可能使用类似'SwingUtilities.invokeLater'内调用'repaint' - 不过这是我的个人感觉学科 – MadProgrammer 2013-05-01 01:09:23