我们的应用程序有几个工作类,它们异步执行各种计算和功能,以支持顶级MVC应用程序。
这些工作程序是通过工厂模式创建的,该模式将std :: unique_ptr返回给实例,该实例使用QThread-> moveToThread放在一个单独的线程上。
在某些情况下,应用程序通过调用设置工作类成员变量的setter(例如将bool传递给函数setDemoMode(true))来与这些进行交互以设置状态。
这是不好的做法吗?我们正在为自己创造任何潜在的问题场景吗?我们的一些开发人员已经建议我们需要将所有信号/插槽或标记变量原子化为线程安全。我只是为了做那个重构,但只有在必要的时候考虑我们现在有一个相当大且经过测试的代码库。