我正在重写一个 MFC 应用程序以使其成为线程安全的。应用程序不使用文档/视图模式并且数据处理不一致。有些仅在 GUI 中,有些在结构中,有些在 XML 中。
所以我想以一致的、线程安全的方式处理数据。如果我将所有数据都放在一个结构中,则在需要时很容易锁定。
那么跳过整个文档/视图模型并以我自己的方式分离数据和表示是否可以?
该应用程序将像这样工作:
通信堆栈在一个线程中运行,当接收到消息时,它将锁定数据并对其进行必要的更改。然后它会向主线程发送一条消息,告诉它需要更新 GUI。GUI 然后将锁定数据并读取它,然后更改 GUI。