[英]how can i time my 2 threads in java
我有 2 个线程,一个用于接受订单,另一个用于分发订单。
我的第一个线程必须能够从文件中逐步获取订单并将其显示在 JTextArea-1 中,而发生这种情况时,另一个线程应该能够一次从 JTextArea-1 中删除一个订单并粘贴它到另一个 JTextArea-2。
我创建了 2 个线程并使用了 MVC 模式(有 2 个视图和 1 个模型)。 线程同时显示 JTEXTAREA 中的值,这是不可接受的。 我该如何解决这个问题?
在从 JTextArea-1 中删除和粘贴到 JTextArea-2 之间,我应该至少有 5 秒的延迟。 请帮助。
这不是处理您的问题的合适方法,它可能一开始甚至不需要线程。
但是如果你坚持使用线程,你想要的是一个信号量来阻塞一个线程,直到另一个线程执行的条件存在。 “FIFO 阻塞队列”在这里也很合适。
使用并发暂停和计时是无效的,因为它是一个不确定的系统,只会导致更微妙的故障场景。
您可以简单地添加一个记录文本的synchronized
调用,以便一次只有 1 个线程可以执行该调用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.