1 つの perl プロセスが 1 つのファイルに書き込み、同じファイルが Java スレッドによって読み取られていることに 1 つの疑問があります。perlプロセスがファイルに書き込んでいるときに、そのスレッドがそのファイルにアクセスして読み取ると、スレッドは待機状態になるか、読み取れるようになります。その後、待機状態になると、実行状態に戻るか、永久に待機状態になります。実際に2つの異なるプロセスがそれを行う方法。
こんにちは、実際には2つのプロセスがあります。1 つは perl process で、これは遅いもので、1 つのタスクが完了するたびにファイルを継続的に更新して、そのタスクのステータスを成功または失敗として更新します。もう 1 つは、タスクのステータスが成功か失敗かにかかわらず、このファイルから継続的に読み取る Java プロセスです。したがって、Javaプロセスは高速なプロセスであるため(タスクが完了するのを待つ必要がないため)、シナリオはどうなりますか。ファイルが書き込みのために perl プロセスによってロックされている場合、この Java スレッドは待機状態または終了状態になります。OSはリナックス。