私のアプリケーションでは、状態の変化を示すためにいくつかの特別な行をログに記録します。
logger.info("Read file abc.txt completed from upstream system");
logger.info("The content of file abc.txt is valid");
logger.info("The content of abc.txt has been saved to db");
次に、ログ ファイルを監視し、上記の行が見つかったら、それらの「イベント」のインスタンスを作成します。
class NewFileEvent() {}
class ValidationEvent() {}
class PersistEvent() {}
while(true) {
String nextLine = readNextLineFromLog();
if("Read file abc.txt completed from upstream system".equals(nextLine)) {
return new NewFileEvent();
} else if("The content of file abc.txt is valid".equals(nextLine)) {
return new ValidationEvent();
} else if("The content of abc.txt has been saved to db".equals(nextLine)) {
return new PersistEvent();
}
}
しかし、私の友人が私のコードをレビューしたとき、「非同期」ではないので「イベント」と呼ぶべきではないと言われました。name を見たときevent
、彼はそれが別のスレッドから来ていることを期待していますが、私のコードでは、ループで 1 つずつ解析するだけです。
私は今困惑しています。何かがevent
プログラミングにあると言うとき、それは「非同期」であると思いますか? 「同期」イベントはありませんか?