multithreading - 将控制台数据从进程输出到wxwidgets中的gui

标签 multithreading user-interface wxwidgets

我在后台运行了一个漫长的过程。我设法将控制台数据输出到gui。但是问题在于,仅在处理完成之后才返回数据。但是我需要实时显示数据。即,每次在控制台上产生一些输出时,我都需要显示数据。我正在从单独的线程在gui中运行该过程。

我的意思是,这就像为ping命令构建一个gui,在每个包发送完之后(即实时)在控制台上显示输出。我只需要实时将其重定向到gui。我正在wxwidgets中实现gui。任何帮助将不胜感激。

感谢您..

聚氯乙烯

最佳答案

您希望显示的输出是否在与运行GUI的过程不同的过程中生成?还是在同一进程中的单独线程中?

我之所以问是因为,大多数人在问这个问题时,都意味着一个单独的话题。由于您已经用“过程”标记了您的问题,因此我假设这就是您的意思。

您需要一些进程间的通信。有各种各样的技术可以做到这一点。就个人而言,我总是使用套接字。

wxWidgets具有简单易用的套接字类wxSocketClient和wxSocketServer。

后台进程可能未运行wxWidgets,因此您还需要其他东西。我推荐boost::asio。我知道它看起来令人生畏,但实际上该教程代码可以按原样使用。

还有很多话要说,但我冒着背离这一点的风险,因为您的问题中的细节太少了。

关于multithreading - 将控制台数据从进程输出到wxwidgets中的gui,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5717842/

相关文章:

python - 多线程 - 如何尽可能多地使用 CPU?

java - 使用 Executors.newCachedThreadPool() 时在线程池中创建的线程数

python - 在点获取对象? wxpython

python - 如何从其父级(另一个 wx.panel 对象)中删除或销毁 wx.panel?

css - Recharts 响应式容器无法在 flexbox 中正确调整大小

c++ - 使用 cpp WxWidgets 写入文件

java - 如何防止 Android 应用程序在每次手机 hibernate 时重置?

C++ 独立数据的多线程性能

python - PyQt - 使用 For 循环创建菜单 :

button - Unity3d 4.6 GUI - 单击按钮脚本从预制件中消失