Size: a a a

2021 February 21

АВ

Александр Водянников... in supapro.cxx
Я не знаю, предположил ))
источник

АВ

Александр Водянников... in supapro.cxx
Получается пара не создастся, сразу "составляющие" ?
источник

LA

Liber Azerate in supapro.cxx
Александр Водянников
Получается пара не создастся, сразу "составляющие" ?
Вполне вероятно
источник

О

Олег in supapro.cxx
мыши
вам в функциональное программирование надо попробовать, ход мысли как раз туда =)
я только учусь)
источник

LA

Liber Azerate in supapro.cxx
Олег
я только учусь)
Фп пригодится в любом случае
источник

В

Виктор in supapro.cxx
Кто-нибудь знает, есть ли уже существующая функция для работы с char* аналог strtok(), только чтобы пустые токены тоже возвращала?
источник

LA

Liber Azerate in supapro.cxx
Виктор
Кто-нибудь знает, есть ли уже существующая функция для работы с char* аналог strtok(), только чтобы пустые токены тоже возвращала?
А это Си или С++? :)
источник

В

Виктор in supapro.cxx
Без разницы, лишь бы максимально быстро работало на очень больших данных. split у QString, например, на 40% медленнее(
источник

LA

Liber Azerate in supapro.cxx
Виктор
Без разницы, лишь бы максимально быстро работало на очень больших данных. split у QString, например, на 40% медленнее(
Тогда можешь взять ренжи, недавно как раз было
источник

В

Виктор in supapro.cxx
Liber Azerate
Тогда можешь взять ренжи, недавно как раз было
ща погуглю, спасибо
источник

LA

Liber Azerate in supapro.cxx
Виктор
ща погуглю, спасибо
источник

RN

Random Nickname in supapro.cxx
while ([this](){ std::lock_guard<std::mutex> lg(jobs_mtx_); return !jobs_.empty(); }())
{

}
Норм практис?
jobs_ - очередь задач
источник

O

Ofee in supapro.cxx
Random Nickname
while ([this](){ std::lock_guard<std::mutex> lg(jobs_mtx_); return !jobs_.empty(); }())
{

}
Норм практис?
jobs_ - очередь задач
while (std::lock_guard<std::mutex>(jobs_mtx_), !jobs_.empty()) {...}
?
Только вот... удобно ли этот однострочник читать?
источник

O

Ofee in supapro.cxx
Random Nickname
while ([this](){ std::lock_guard<std::mutex> lg(jobs_mtx_); return !jobs_.empty(); }())
{

}
Норм практис?
jobs_ - очередь задач
Ну, и вообще, этот код вызывает вопросы. Что, если в момент проверки очередь была не пуста, а сразу после кто-то уже забрал задачу в другом потоке? После открывающей фигурной скобки мы не можем полагаться на истинность условия
источник

RN

Random Nickname in supapro.cxx
Ofee
Ну, и вообще, этот код вызывает вопросы. Что, если в момент проверки очередь была не пуста, а сразу после кто-то уже забрал задачу в другом потоке? После открывающей фигурной скобки мы не можем полагаться на истинность условия
ты прав, теперь я засунул вытаскивание в тот же захват
источник

RN

Random Nickname in supapro.cxx
но вопрос был именно про синтаксичесую конструкцию, когда надо много сделать в проверке условия
источник

RN

Random Nickname in supapro.cxx
Ofee
Ну, и вообще, этот код вызывает вопросы. Что, если в момент проверки очередь была не пуста, а сразу после кто-то уже забрал задачу в другом потоке? После открывающей фигурной скобки мы не можем полагаться на истинность условия
Кстати ответ есть простой. Вытаскиваю из очереди я только в одном месте и отвечаю за это самостоятельно
источник

m

mixa secret in supapro.cxx
Здраствуйте, что лучше MinGW или Cygwin &
источник

O

Ofee in supapro.cxx
Ofee
while (std::lock_guard<std::mutex>(jobs_mtx_), !jobs_.empty()) {...}
?
Только вот... удобно ли этот однострочник читать?
Я бы не стал так использовать лямбду, предпочёл бы вынести логику в функцию с говорящим названием. Но если хочется однострочник — как я показал выше, в C++17 можно обойтись более компактной конструкцией:
while (std::lock_guard(jobs_mtx_), !jobs_.empty())
{ ... }
Её понятность оставляет желать лучшего, но я всё ещё нахожу эту конструкцию читаемее вызова лямбды
источник

O

Ofee in supapro.cxx
mixa secret
Здраствуйте, что лучше MinGW или Cygwin &
Для каких целей? Возможно, в большинстве случаев, правильным ответом будет Clang или MSVC
источник