0 / 0 / 0
Регистрация: 01.07.2014
Сообщений: 7
|
||||||
1 | ||||||
С++ 11 потоки для начинающих01.07.2014, 12:53. Показов 3344. Ответов 13
Метки нет Все метки)
(
Ранее никогда с потоками дело не имел, не знаю толком никакой теории(если можно, посоветуйте конкретные примеры для быстрого освоения). Существует задача: в одном потоке к некой общей строке что-то прибавляется, а в другом потоке мониторится длина этой строки, и при достижении длины, допустим в 500 символов строка отчищается. Вычитал, что нужен mutex(не понял толком, что это; понял, что это какой-то простейший синхронизатор), но не знаю как применить. Грубая накидка кода.
0
|
|
01.07.2014, 12:53 | |
Ответы с готовыми решениями:
13
Что такое потоки ввода, потоки вывода? Потоки для чайников Потоки для службы Потоки для перемножение матриц |
Неэпический
|
|
01.07.2014, 12:55 | 2 |
на счет быстрого не знаю, но вот http://www.ozon.ru/context/detail/id/17636939/
0
|
3254 / 2056 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
01.07.2014, 13:28 | 3 |
0
|
0 / 0 / 0
Регистрация: 01.07.2014
Сообщений: 7
|
|
01.07.2014, 13:34 [ТС] | 4 |
Типичный ответ на русском форуме. Конечно я первым делом сгонял на референс, однако обычно я не читаю там теории из-за плохого знания английского, а просто беру код примеров. Я прошу, чтоб вы "разжували". Как мне доработать приведённый выше код??
0
|
![]() ![]() |
|
01.07.2014, 13:38 | 5 |
Есть замечательная книга по потокам в C++11
Э. Уильямс Параллельное программирование на С++ в действии. http://www.ozon.ru/context/detail/id/17636939/ Советую ознакомится. В данном случае вам думаю следует смотреть не в сторону мьютексов, а по большей части condition_variable.
1
|
7376 / 6295 / 2859
Регистрация: 14.04.2014
Сообщений: 27,297
|
||||||
01.07.2014, 13:46 | 6 | |||||
В простейшем случае так:
0
|
![]() ![]() |
||||||
01.07.2014, 13:55 | 7 | |||||
В п. 4.1.1 практически аккурат ваш пример.
Добавлено через 7 минут Вот рабочий пример. Если это то что вы хотели?...
1
|
0 / 0 / 0
Регистрация: 01.07.2014
Сообщений: 7
|
|
01.07.2014, 14:03 [ТС] | 8 |
Всё разобрался
0
|
7376 / 6295 / 2859
Регистрация: 14.04.2014
Сообщений: 27,297
|
|
01.07.2014, 14:05 | 9 |
Цикл while(true) добавь в поток, как у Ilot в примере.
0
|
Ilot
|
01.07.2014, 14:14
#10
|
0
|
17110 / 9129 / 2236
Регистрация: 30.01.2014
Сообщений: 15,915
|
||||||
01.07.2014, 14:21 | 11 | |||||
petr_shumilov,
Вариант с возможностью нормального выхода: Кликните здесь для просмотра всего текста
0
|
0 / 0 / 0
Регистрация: 01.07.2014
Сообщений: 7
|
|
01.07.2014, 14:23 [ТС] | 12 |
Что-то у меня не работает, как слепой котёнок я в потоках. Я хочу добиться результата при котором будет вот такой вывод:
additional_thread -- ab additional_thread -- abab additional_thread -- ababab additional_thread -- abababab additional_thread -- ababababab additional_thread -- ab additional_thread -- abab additional_thread -- ababab additional_thread -- abababab additional_thread -- ababababab при условии, что количество символов, при котором строка отчищается 10
0
|
17110 / 9129 / 2236
Регистрация: 30.01.2014
Сообщений: 15,915
|
||||||
01.07.2014, 14:28 | 13 | |||||
petr_shumilov,
Кликните здесь для просмотра всего текста
1
|
ну и долго меня небыло...
61 / 57 / 8
Регистрация: 24.03.2013
Сообщений: 173
|
|
01.07.2014, 15:48 | 14 |
а как же хабра? http://habrahabr.ru/post/182610/
0
|
01.07.2014, 15:48 | |
Помогаю со студенческими работами здесь
14
Потоки для динамических объктов Потоки, синхронизация для работы с формой Сделать потоки для данной программы Потоки и асинхронность для бота в телеграмме Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |