170 похожих чатов

У меня такой вопрос: почему два потока выполняют некую операцию

(в данном случае увеличение переменной i) за такой же промежуток времени (или даже медленнее), чем один поток? Разве не должно быть наоборот?

18 ответов

13 просмотров

И где тут "два потока"? Вижу, что один запускает второй и ждёт пока тот закончит.

🦑Валсотявс Рабуз🦑 Рабуз🦑
Так два потока же запускаются, не?

Где? Запускается один, а тот, что его запускает зависает в Join.

А, тьфу, вижу. Плохо код читаю.

Очень плохой код даже для подобного бенча. Ты можешь точно ответить как твои потоки получают доступ до i и m, и где они хранятся?

как минимум создание потока безумно дорого, попробуй из тредпулла достать

Заделай два метода и две переменные i и ii И померяй. Проблемы с доступом к общей переменной

Ayrat Hudaygulov
Очень плохой код даже для подобного бенча. Ты може...

Варианты ответа - переменные хранятся на стеке главного потока и новые потоки получили ссылку на его стек (нет, так никто не делает) - переменная со стека главного потока неявно копируется на хип для каждого нового потока отдельно, замыкается в нём и далее каждый поток работает со своей хип копией - переменные копируются по значению на стеки новых потоков и далее каждый поток работает со своей стек копией - переменная один раз боксится и далее новые потоки конкурентно читают общие ресурсы с хипа Какой вариант думаешь правильный?

Ayrat Hudaygulov
Варианты ответа - переменные хранятся на стеке гла...

А почему так не кто не делает 1 вариант ответа ?

🅘🅢🅛🅐🅜
А почему так не кто не делает 1 вариант ответа ?

Стек родительского потока может сдохнуть до того, как это сделают дочерние.

🅘🅢🅛🅐🅜
А почему так не кто не делает 1 вариант ответа ?

Это UB по многим причинам даже в плюсах, уверен в дотнете рантайм никогда тебе код так не скомпилит и будет делать дефенсив копии

🦑Валсотявс Рабуз🦑 Рабуз🦑
вообще хз

В начале я бы ответил на этот вопрос

🦑Валсотявс Рабуз🦑 Рабуз🦑
последний?

Я не знаю, из кода непонятно. Но то что они явно не апдейтят твои стековые i,m это очевидно

Кстати почему у висуал студио такие моменты когда ты создаёшь кнопку он тебе задаёт предупреждение то что название кнопки ошибка лучше напишите с большой буквы хотя по умолчанию висуал студио с маленькой пишет , это фича или что ?

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Привет. Подскажите, как правильно сматчить лист фиксированного размера, чтобы компилятор не говорил мне о неполном паттерне? Допустим что-то такое [x', y'] = sort [x, y]?
Arseny
8
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Мужики. привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных элементов...
Kraszx
2
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Карта сайта