Кресты / Говнокод #25634 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
std::queue<char *> outQueue2;
std::lock_guard<std::mutex> lock(mtx);
mtx.lock();
if (outQueue.size() > 0) {
std::swap(outQueue2, outQueue);
outQueue = {};
}
std::lock_guard<std::mutex> unlock(mtx);

со слов автора:
у меня 2 исходящие очереди
в одну соседний поток ложит
потом приходит тик
врубает симафор
копирует по-бырому очередь
и чистит её
дальше отпускает поток
чтобы не ждать
пока всё отправится
и спокойно в соседнем потоке уже начинает BYtestream...
и всё такое
разьве не так делают в домах парижу?

Запостил: heh1137 heh1137, (Updated )

Комментарии (68) RSS

  • Ух, ебать, жёстко! Давно такой годноты не было.

    > std::lock_guard<std::mutex> lock(mtx);
    > mtx.lock();
    > std::lock_guard<std::mutex> unlock(mtx);
    Лол, писать многопоточные приложения на крестах, при этом совершенно не понимая сути RAII — как-то… хм… забавно выходит, короче.

    Кстати, я так понимаю, русский язык автор знает примерно на том же уровне, что и кресты?
    Ответить
      • вот какакашка

        в жабе локи реинтераблябляблные
        можно синкануться хоть 10 раз
        Ответить
        • std::recursive_mutex реентерабельный. Но умные люди пишут, что если одному потоку надо несколько раз лочить один мьютекс, то с рахитектурой приложения произошло какое-то говно.
          Ответить
      • Ага, и UB в качестве вишенки для торта из говна.
        Ответить
    • Gost, признайся, хастехбкой была ты?
      Ответить
    • Читай внимательно. ОП не является автором кода
      Ответить
      • Подразумевается «автор кода», о котором ТС говорит в первой строке.
        Ответить
        • Русский язык как раз не знает ОП, а не автор кода
          Ответить
          • У меня создалось впечатление, что «слова автора» скопированы из какого-то мессенджера. Впрочем, всегда остаётся вероятность, что безграмотны они оба.
            Ответить
      • Эх, тут ошибка. #tib это variable чтобы получить её значение её надо @
        #tib @ >in ! эта часть строки проигнорируется.
        : \  #tib @ >in ! ; immediate
        \ именно поэтому я за S" этосамое"
        Ответить
        • сука
          и эти люди смеются над сендмейлами и регуляками
          это же пиздец птичьй @qrdw324:1!
          Ответить
          • : определить-слово:  : ;
            : положить-на-стек-адрес-ячейки,содержащей-число-символов-во-входном-буфере  #tib ;
            : извлечь-значение-ячейки-по-адресу  @ ;
            : положить-на-стек-адрес-ячейки,содержащей-смещение-в-символах-от-начала-входного-буфера-до-начала-области-анализа  >in ;
            : записать-значение-под-вершиной-стека-в-ячейку-по-адресу,находящемуся-на-вершине-стека  ! ;
            : закончить-определение  postpone ; ; immediate
            : это-определение-исполняется-при-компиляции  immediate ;
            
            определить-слово: однострочный-комментарий:
                положить-на-стек-адрес-ячейки,содержащей-число-символов-во-входном-буфере
                извлечь-значение-ячейки-по-адресу
                положить-на-стек-адрес-ячейки,содержащей-смещение-в-символах-от-начала-входного-буфера-до-начала-области-анализа
                записать-значение-под-вершиной-стека-в-ячейку-по-адресу,находящемуся-на-вершине-стека
            закончить-определение
            это-определение-исполняется-при-компиляции
            
            однострочный-комментарий: теперь это комментарий
            Так лучше?
            Ответить
  • пиздец, потоки юзают...
    длиннее но красивше выйдет в один
    Ответить

Добавить комментарий

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8