识别嵌入式软件设计中的线程

时间:2015-04-21 09:02:17

标签: multithreading architecture task software-design

即使线程及其功能仅取决于应用程序,在确定嵌入式软件应用程序所需的线程数及其功能时,是否有一些通用技巧或最佳实践。

欢迎任何决策参数建议。

1 个答案:

答案 0 :(得分:0)

通常,对于每个数据/事件源,将有一个负责将数据引入系统的线程。任何可能需要较长时间的处理工作都应放入一个线程中。系统的核心逻辑也应该在一个线程中。在这种设计方法中,线程服务于以下两个目的之一:卸载耗时的任务,以便核心系统快速平稳地响应;并封装一些组件逻辑,以便系统可以正确分区。

还有另一种观点认为线程数不应超过处理器核心数。在此设计视图中,线程通常是池中的通用处理单元。数据输入或事件将从池中传递给任何空闲线程以进行处理。处理完一个事件后,该线程将返回池并准备好接受下一个事件。这种方法通常由数据处理/信息技术/企业软件使用。在此设计中,线程不用作逻辑封装工具。

相关问题