我怎样才能在java中计算我的2个线程

时间:2014-04-07 18:53:15

标签: java model-view-controller concurrency timer

我有两个主题,一个是接受订单,另一个是分发订单。

我的第一个线程必须能够逐个从文件中逐个获取订单并将其显示在JTextArea-1中,而这种情况发生时其他线程应该能够从JTextArea-1一次删除一个订单并将其粘贴到另一个JTextArea-2。

我创建了2个线程并使用了MVC模式(有2个视图和1个模型)。线程同时在JTEXTAREA中显示值,这是不可接受的。我该如何解决这个问题?

从JTextArea-1删除和粘贴到JTextArea-2之间我应该有至少5秒的延迟。请帮助。

2 个答案:

答案 0 :(得分:1)

基本缺乏对并发警报的理解!

这不是处理问题的合适方法,它可能首先不需要线程。

但是如果你坚持使用线程,你想要的是阻塞一个线程的信号量,直到另一个线程的条件存在。此处也可以使用“FIFO阻塞队列”

暂停计时与并发一起使用是无效的,因为它是一个非确定性系统,只会导致更微妙的故障情况。

答案 1 :(得分:0)

您只需添加一个记录文本的synchronized调用,这样一次只有一个线程可以执行该操作。