1:15:20 -- в оригинале фраза звучит так: "There are 2 hard problems in computer science: cache invalidation, naming things, and off-by-1 errors." -- В компьютерных науках есть две сложные проблемы: инвалидация кэша, именование переменных и ошибка на единицу.
@Ivan.V.Petrov3 жыл бұрын
Спасибо за лекцию, включил на фоне, чтобы уснуть)
@philosophoflove2 жыл бұрын
Супер препод.
@sabotoff9322 жыл бұрын
Лекция отличная, большое спасибо! Я пишу под Windows и всегда пользовалься нативными потоками OC для распараллеливания. Недавно попробовал работать с потоками c++. Там все продумано и логично. Код пишется легко. Но мне показалось, что внутренний библиотечный пул пытается экономить ресурсы. Скажем при 8-ми ядрах на десктопе, мне не удалось добиться одновременной работы 8-ми потоков. Работают не более 6. Остальные стоят в очереди. Еще один неприятный момент: невозможно создать поток в состоянии suspend(?) и точно отследить начало работы потока. Видимо, это плата за переносимость. Нативные потоки в Windows гибче.
@Студенческиепроекты Жыл бұрын
Понимаю, что синглтон здесь использовался для демонстрации, но всё же скажу, что начиная с C++11 если в функции инициализируется static переменная, то это гарантировано сделает только один поток, а другие потоки не будут обращаться к неинициализированной переменной. Подробнее можно почитать: Энтони Уильямс "Практика многопоточного программирования", с. 100
@IExSet2 жыл бұрын
44:45 Во всех примерах, где объявляется unique_lock c defer_lock, последующий вызов lock производится на них же, а не на исходные мьютексы. Почему здесь не так ? Сработает ли unique_lock если не вызывать на них lock ??? future_status - переводится как "будущий статус".
@AndersonSilva-dg4mg5 жыл бұрын
Спасибо большое!
@usergnusmas68797 ай бұрын
Есть вероятность, что при разбиении по потокам, мультитрэйдинг не будет учитываться. Т.е. на шестиядерном проце, будет использовано только шесть потоков.
@WowSoLaggy Жыл бұрын
А разве в примере на 1:00:00 не будет дедлока? sending_thread функция лочит мьютекс mt и зависает в вечном ожидании непустого буфера (не освобождая мьютекс) на строке 10. Соответственно, при вызове функции on_frame она задедлочится навсегда в ожидании мьютекса mt на строчке 18.
@dominuspiritus5 ай бұрын
В момент вызова wait мьютекс отпускается
@КитайскийГородовой-к6л3 жыл бұрын
Чем Event отличается от Condition Variable? Судя по функционалу - практически одно и то же.
@zakharkulbachenko34333 жыл бұрын
а как мьючить лотекс?
@romuelson Жыл бұрын
🤣
@maxpo8013 жыл бұрын
1:30:25 volatile
@VeloVetal Жыл бұрын
std::async(std::launch::async, ...); -- как то мало асинков, надо больше, больше!
@kaganyevgeny Жыл бұрын
коробит слух когда пи ти ар называют пэ тэ эр :))))
@Иван-о3ъ6ь3 ай бұрын
Лектор в целом норм, но английские слова проглатыевает просто жесть : майкрософтский превратился в мский, и всё остальное в том же духе