- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 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
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...
и всё такое
разьве не так делают в домах парижу?
> std::lock_guard<std::mutex> lock(mtx);
> mtx.lock();
> std::lock_guard<std::mutex> unlock(mtx);
Лол, писать многопоточные приложения на крестах, при этом совершенно не понимая сути RAII — как-то… хм… забавно выходит, короче.
Кстати, я так понимаю, русский язык автор знает примерно на том же уровне, что и кресты?
У меня, кстати, в рекомендациях петухи наконецто пропали, теперь там такая крипота:
https://www.youtube.com/watch?v=Kee9Et2j7DA
От аниме и пхп не зарекаются.
1+!
длиннее но красивше выйдет в один