最近、Robot インスタンスが既に作成されていることを経験しました。もう一度作成しようとすると (明らかに robot.cleanUp() を呼び出さずに)、そこに永久にハングします。これを調査したところ、Robot インスタンスを作成するたびに ScreenLock が必要であることがわかりました。
したがって、私の質問は、この種の動作は Singleton クラスによって実現できるということです。次に、デッドロック状態であるにもかかわらず、別の Robot インスタンスを作成できる理由。つまり、ロボットを作成し、クリーンアップして再度作成する場合、そもそもなぜロボットをクリーンアップして再作成する必要があるのでしょうか? 現在のアプローチは意味がないため、ユーザーの要求に応じて Robot インスタンスを提供する API が 1 つ必要です。