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

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

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

18 ответов

14 просмотров

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта