LINUX.ORG.RU

История изменений

Исправление kawaii_neko, (текущая версия) :

Это, наверное, происходит... да, на аллокаторе, который не знает о нитях?

ptmalloc знает, но во-первых, начиная с некоторого момента, арен перестает хватать и несколько потоков начинают «сидеть» на одной арене (не уверен насчет fastbin-ов).

Во-вторых, операция выделения памяти хоть и быстрая, но не мгновенная.

В-третьих, std::string(argv[i]) == "somestr" даже длиннее, чем strcmp(argv[i], "somestr") == 0 и делает больше ненужных действий!

В-четвертых, тот товарищ кастовал argv[i] к std::string трижды внутри одного цикла.

В сухом остатке: зачем давать такие вредные советы новичку?

Исходная версия kawaii_neko, :

Это, наверное, происходит... да, на аллокаторе, который не знает о нитях?

ptmalloc знает, но во-первых, начиная с некоторого момента, арен перестает хватать и несколько потоков начинают «сидеть» на одной арене (не уверен насчет fastbin-ов).

Во-вторых, операция выделения памяти хоть и быстрая, но не мгновенная.

В-третьих, std::string(argv[i]) == "somestr" даже длиннее, чем strcmp(argv[i], "somestr") == 0 и делает больше ненужных действий!

В-четвертых, тот товарищ кастовал argv к std::string трижды внутри одного цикла.

В сухом остатке: зачем давать такие вредные советы новичку?