Собственно стала реальная проблема связывания отдельных частей программы между собой (многопоточное приложение),
тоесть когда отдельный поток должен запросить данные у другого или отозваться на какое-то событие.
Методом проб и ошибок пришел к созданию класса messaging:: (sender, receiver), но есть неподдельное чувство, что я делаю чтото неправильно.
Посоветуйте пожалуйста что почитать, желательно на С++ из нового, по проектированию или я даже не знаю как это называется в данном случае.
Или расскажите кто как решает подобные задачи (именно обеспечение взаимосвязи отдельных частей программы).
Спасибо
Re: Посоветуйте книгу о проектировании приложений на С++
Здравствуйте, fxuser, Вы писали:
F>Собственно стала реальная проблема связывания отдельных частей программы между собой (многопоточное приложение), F>тоесть когда отдельный поток должен запросить данные у другого или отозваться на какое-то событие. F>Методом проб и ошибок пришел к созданию класса messaging:: (sender, receiver), но есть неподдельное чувство, что я делаю чтото неправильно.
F>Посоветуйте пожалуйста что почитать, желательно на С++ из нового, по проектированию или я даже не знаю как это называется в данном случае. F>Или расскажите кто как решает подобные задачи (именно обеспечение взаимосвязи отдельных частей программы).
F>Спасибо
Примеры проектирования есть в книге Гради Буча: https://www.ozon.ru/context/detail/id/3905587/
Однако, судя по посту — вам, может быть, стоит почитать о взаимодействии параллельных процессов?
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Чем обусловлен отказ от вставки названий книг в тело сообщения? Недавно у вас уже видел аналогичный комментарий про книжки, испещрённый «здесь»ями и «http»шками.
LVV>>https://www.ozon.ru/context/detail/id/4884925/
Q>Чем обусловлен отказ от вставки названий книг в тело сообщения? Недавно у вас уже видел аналогичный комментарий про книжки, испещрённый «здесь»ями и «http»шками.
Даже не задумывался об этом.
Потому как практически живу в озоне и для меня как-то привычно ходить там по ссылкам.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Отдельное спасибо, интересный интерфейс, буду изучать.
Проблемы передачи данных между потоками нет, проблема правильно логически связать все элементы программы
Бегло прошелся по книгам, Г. Буч вроде похоже на то что я искал, видимо первое в списке на прочтение
большое спасибо!
Re: Посоветуйте книгу о проектировании приложений на С++
Здравствуйте, fxuser, Вы писали:
F>Собственно стала реальная проблема связывания отдельных частей программы между собой (многопоточное приложение), F>тоесть когда отдельный поток должен запросить данные у другого или отозваться на какое-то событие. F>Методом проб и ошибок пришел к созданию класса messaging:: (sender, receiver), но есть неподдельное чувство, что я делаю чтото неправильно.
F>Посоветуйте пожалуйста что почитать, желательно на С++ из нового, по проектированию или я даже не знаю как это называется в данном случае. F>Или расскажите кто как решает подобные задачи (именно обеспечение взаимосвязи отдельных частей программы).
F>Спасибо
Ну если самостоятельно получилась неявная реализация модели акторов, то может стоит почитать про них и возможно сделать уже явную? ) Кстати, есть и уже готовые реализации (Theron), ну а вообще можно ещё почитать об архитектуре Эрланга — тоже полезное дело. )
Re: Посоветуйте книгу о проектировании приложений на С++
Здравствуйте, fxuser, Вы писали:
F>Собственно стала реальная проблема связывания отдельных частей программы между собой (многопоточное приложение), F>тоесть когда отдельный поток должен запросить данные у другого или отозваться на какое-то событие. F>Методом проб и ошибок пришел к созданию класса messaging:: (sender, receiver), но есть неподдельное чувство, что я делаю чтото неправильно.
F>Посоветуйте пожалуйста что почитать, желательно на С++ из нового, по проектированию или я даже не знаю как это называется в данном случае. F>Или расскажите кто как решает подобные задачи (именно обеспечение взаимосвязи отдельных частей программы).
F>Спасибо Эффективное использование C++. 55 верных советов улучшить структуру и код ваших программ, Скотт Мейерс
. У него там еще продолжение было. Это уже обощенные советы по плюсам, но готовые к использованию, и достаточно обобщенные чтобы можно отнести их к проектированию. Но если упор именно про многопоточное программирование, то там особо ничего нет. Но главное эти советы задают правильный ход мыслям, в нужную сторону. А уж применить их к многопоточности можно вполне.
Здравствуйте, fxuser, Вы писали:
F>Или расскажите кто как решает подобные задачи (именно обеспечение взаимосвязи отдельных частей программы).
Я решаю эту проблему используя Qt с сигналами и слотами, потому что мне нравится объектно-ориентированное программирование. А вот если бы использовал обобщённое программирование (шаблоны с++), то смотрел бы в самую первую очередь на boost.
Про boost пусть говорят те кто на нём специализируются, но на вскидку: http://www.boost.org/doc/libs/1_56_0/doc/html/signals2.html
F>Методом проб и ошибок пришел к созданию класса messaging:: (sender, receiver), но есть неподдельное чувство, что я делаю чтото неправильно.
То чувство, когда изобретаешь давно реализованный и стандартизированный велосипед.