Робот является частью библиотеки AWT, но, похоже, он отличается от большинства остальных библиотек. Я создаю Swing GUI, который смешивает Swing с Java Native Access (JNA) и Robot, чтобы позволить Java управлять некоторыми рабочими программами MS Windows/Citrix. Я чувствую, что, поскольку робот будет размещать в очереди события в "начальной входной очереди платформы", последнее, что я хочу сделать, это запустить его на EDT, но, с другой стороны, большинство классов в AWT и Swing-библиотеках должен выполняться в потоке событий Swing. Поэтому, чтобы попытаться прояснить это в моем сознании, позвольте мне задать как можно более конкретный вопрос:
Должны ли методы робота (в частности, нажатия и отпускания клавиш, перемещения мыши, нажатия и отпускания мыши) запускаться или выходить из потока отправки событий Swing (EDT)?