我正在为我的Java项目编写GDB包装器。有没有办法确定GDB中的目标应用程序何时等待用户输入?
答案 0 :(得分:1)
基本上,您需要将标准I / O重定向到POSIX系统下的伪终端。我将在下面概述如何做到这一点。
编写一个单独的“启动器”程序:
在Java控制程序中:
然后,您可以检测到正在调试的程序正在等待用户输入。将pty文件描述符的主端转换为NIO通道,将其设置为非阻塞模式并monitor the master pty for writing with a Selector。
您需要一个单独的代码路径来支持Microsoft Windows。