我已经在 xCode 中通过 PID 号成功附加到一个进程。令人沮丧的是,在使用正在运行的应用程序进行操作时,我没有看到任何 print() 语句被执行。那是正常的吗?我应该在某处勾选复选框吗?
Best Answer-推荐答案 strong>
这是正常的。进程在创建时继承其标准输入、输出和错误输出。在那之后,进程可以更改它自己的标准文件描述符,但不能从外部更改它们。
因此,通过 Xcode 以外的其他方式启动的程序不会将其输出定向到 Xcode 的控制台窗口。确切地说,它的输出指向何处取决于它是如何启动的。如果它是从 GUI(例如 Finder、Dock、其他 GUI 应用程序)启动的,那么它的正常输出可能会被丢弃(定向到/dev/null)并且它的错误输出将转到控制台日志(可使用/Applications/Utilities 查看)/控制台.app)。如果它直接从终端的 shell 运行,那么它的输出将进入终端窗口。
关于ios - 附加到 xcode 中的进程时不执行打印语句,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/32554577/
|