我有一个处理rs232设备事件的监听器,我想将String
参数传递给其他两个临时监听器。我怎么能这样做?
RS232听众代码:
static class SerialPortReader implements SerialPortEventListener {
public void serialEvent(SerialPortEvent event) {
if(event.isRXCHAR()){
if(event.getEventValue() > 0){
try {
String asd= serialPort.readHexString(18);
//asd is argument to pass to other listener
System.out.println(asd);
}
catch (SerialPortException ex) {
System.out.println(ex);
}
}
}
}
然后我需要一个临时监听器,例如
String new = waitForPassedStringArgument();
或当我收到String
时,听众会更改ArrayList
中的值。
答案 0 :(得分:0)
您的侦听器是否在与发件人分开的线程上运行?如果是,请设置BlockingQueue
s(每个侦听器一个),然后将发件人offer
项目放入每个队列。然后,每个侦听器从各自的队列中检索项目。