Friday 15 July 2011

c++ - Is it smart to have the Model live in a different thread than the View (Qt application) -


Is it a good idea to model part of an MVC application separately in a separate thread of the View part (GUI) application ? Extend me a little.

We are working on Qt GUI application. We have some model squares that are used for model computations, i.e. Model Objects will create a graph in which nodes represent computation and edges data flow. The GUI is used to collect this graph. Model classes have been obtained from all QObject and use the signal / slot mechanism to pass data between them and to indicate state change in the view.

An important requirement is to execute calculations It is possible that the architect of our team in different thread has decided to stay all the model objects in a different thread all the time. This clearly means that the signs between the model and the GUI always go to the queue of the incident and this communication is therefore asynchronous. The debate for this design is that it seems very difficult to do this in any other way at this point in the project.

What is your opinion? Do you think this is a good design? Have you used such a design? What can be wrong? How do you approach the parallel execution requirement?


No comments:

Post a Comment