您好我正在创建一个读写串口的程序。在程序开始时,我正在调用类ReadSerialPort,WriteSerialPort和JWakeup。
我的问题是:当我从JWakeup向串口写入内容时,我想等到串口回复。
public class MainClass{
public static void main(String args[]){
new ReadSerialPort().OpenSerialPort();
new WriteSerialPort().OpenSerialPort();
new JWakeup().setVisible(true);
}}
public class JWakeUp extends JFrame implements ActionListener{
public JWakeUp() {
super("JWakeUp");
//Other Code
new WriteSerialPort().writeDataToSerialPort("WritenString");
//In this part I want to know when the class ReadSerialPort()
// will read the "readenString"
}}
答案 0 :(得分:0)
您可以使用Semaphore semaphore = new Semaphore(0);
在这些类之外创建信号量,并将其传递给这些类。完成ReadSerialPort后,使用semaphore.release()
并在JWakeUp内等待ReadSerialPort使用semaphore.acquire()