我正在开发一个涉及UI和后台服务的C/C++项目,该服务通过网络获取数据进行一些繁重的处理。为了避免UI不响应,我想要创建一个单独的线程,并在其中调用后台服务,同时另一个线程将在UI中显示忙碌指示。一旦后台服务完成其工作,我希望将线程上下文从后台线程切换到UI线程,以便删除忙碌指示并显示更多屏幕流程。
我相信这是大多数UI工作的常规方式。我想知道的是实现这一点的高效和最佳方法是什么。目前我没有实现上述代码,只是寻求想法和最佳实现方法。
平台是Linux。我使用的UI框架是自定义UI框架,它提供了UI开发的SDK,但与大多数UI框架不同,它没有提供我所提到的场景。它几乎是过时的框架,但必须用于这个项目,这很麻烦,因此唯一的选择是我可以使用Pthread或System v,并在实际调用上添加一些包装器,这将有助于我在不同的平台上保持实现的可移植性。
由于嵌入式环境的某些限制,我无法使用Boost Threads。任何关于上下文切换如何发生的建议和解释将非常有帮助。
我相信这是大多数UI工作的常规方式。我想知道的是实现这一点的高效和最佳方法是什么。目前我没有实现上述代码,只是寻求想法和最佳实现方法。
平台是Linux。我使用的UI框架是自定义UI框架,它提供了UI开发的SDK,但与大多数UI框架不同,它没有提供我所提到的场景。它几乎是过时的框架,但必须用于这个项目,这很麻烦,因此唯一的选择是我可以使用Pthread或System v,并在实际调用上添加一些包装器,这将有助于我在不同的平台上保持实现的可移植性。
由于嵌入式环境的某些限制,我无法使用Boost Threads。任何关于上下文切换如何发生的建议和解释将非常有帮助。