![]() |
|
|
![]()
|
|
| borisbn |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 48 Всего: 135 |
Добрый день.
Набросал наипростейшую программку с сабжем и ... не работает ( памагите
вывод
http://liveworkspace.org/code/753152e3115e...788468135f2c606 Почему не в перемешку ? Пробовал не 42 раза добавлять, а 500 - рез-т тот же. Спасибо. -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
||||
|
|||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 3 Всего: 211 |
borisbn
Во первых элементов слишком мало (даже 500-а может не хватить), чтобы что-то почувствовать, скорее всего первый поток уже завершен, когда второй начинает работать. Во вторых это зависит и от планировщика задач, возможно поток просто не получает управление. Поставь барьер на входе и добавь boost::this_thread::yield().
http://liveworkspace.org/code/f6daba84b38a...15813f0a0499dca Это сообщение отредактировал(а) azesmcar - 15.10.2011, 10:50 |
|||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 48 Всего: 135 |
о! точно. сработало. спасибо. а вот это не понял зачем... убрал - работает так же, как и без него. -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| azesmcar |
|
|||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 3 Всего: 211 |
||||
|
||||
| ecspertiza |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 3.11.2008 Где: г.Смоленск Репутация: 4 Всего: 5 |
Я может что то из буста подзабыл, но на мой взгляд проблема в
ты сначала дожидаешься выполнения одного потока потом второго, вот они по очереди и работают. |
|||
|
||||
| math64 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 23 Всего: 72 |
Нет, не в этом - без yield(); никто не хочет отдавать процессор, кто его забрал - тот и работает. На двухядерной машине потоки могли бы работать действительно одновременно.
|
|||
|
||||
| azesmcar |
|
||||
![]() uploading... ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: 3 Всего: 211 |
Дожидается основной поток, а остальные два работают (их там три).
А его никто не спрашивает чего он там хочет Это сообщение отредактировал(а) azesmcar - 15.10.2011, 21:15 |
||||
|
|||||
![]()
|
| Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |