2013-03-22 2 views
0

У меня есть групповой проект на Java. Мы должны моделировать клиентов, собирающих посылки из почтового отделения. - Клиенты приходят в произвольные промежутки времени - Посылки прибывают после долгого промежутка времени - Клерк ждет клиентов; когда есть один - он передает им посылки.Как вы используете Threads с MVC?

Я сделал заказчик и посылку, которая добавляет клиентов и посылки по мере необходимости. Я также сделал клерковую нить, которая спит, пока не прибудут клиенты.

Проблема в том, как Threads вписывается в MVC?

Я создал отдельные классы Runnable для каждого потока. Я передаю представление их конструкторам?

+0

Зачем использовать темы здесь? Это не кажется подходящим. Гораздо проще использовать Очереди и различные актеры/сообщения. – 2013-03-22 19:29:23

+0

Это требование для проекта. –

+3

Ну, это отстой :) – 2013-03-22 19:30:12

ответ

2

Я сделал отдельные классы Runnable для каждой темы. Я передаю представление их конструкторам?

Нет, задача «фона» как таковая не кормит вид напрямую. Модель, которая является общей для всех слоев приложения, является моделью. Темы, которые выполняют работу в фоновом режиме, должны обновлять соответствующую модель по мере завершения их работы. Представление Наблюдает за тем, чтобы модель обновлялась по мере необходимости.

+0

Звучит скорее как MV * M - не я против такого. – 2013-03-22 19:34:41

+0

IMO «MVC» уже давно деградировало чуть больше, чем маркетинговый термин без согласованного определения в различных рамках и платформах. Он используется для продажи технологических стеков менеджерам продуктов, которые помнят ужас поддержания VB6 и хотят сказать, что на этот раз все будет иначе, потому что «у этого есть MVC»/rantdone :) – Affe

+0

О, ладно, это имеет смысл :) Спасибо. Поэтому мой контроллер видит, что модель изменила и обновила представление, в то время как поток продолжает работать в фоновом режиме. –

Смежные вопросы