Mock - собеседование программиста: секция С++

preview_player
Показать описание

Консультации:

00:00 - const с указателями
02:07 - умные указатели
06:10 - контейнеры
13:52 - виртуальность
30:25 - многопоточность
45:42 - deadlock проблема
46:57 - реализаци shared_ptr

Рекомендации по теме
Комментарии
Автор

Круто смотреть как происходит реальное собеседование. Реально погружает в это состояние. Плюс актуальные вопросы, можно проверить себя и найти, что-то новое

scientistN
Автор

Спасибо большое за видео, хотелось бы видеть больше подобного контента, или разбор вопросов которые могут быть на собеседовании.

yanparasyuk
Автор

Удивительно что так мало просмотров, очень полезно, спасибо! Как я понимаю deadlock можно избежать следующим образом:
void calculation (std::mutex& m1, std::mutex& m2, const std::vector<int>& data) {
{
std::lock_guard<std::mutex> lock1(m1);
}
{
std::lock_guard<std::mutex> lock2(m2);
}
}

HelloWorld-oceu
Автор

По поводу потокобезопасности shared_ptr 5:36

Я бы сказал, что shared_ptr потокобезопасен, когда каждый поток хранит копию shared_ptr (копирование и удаление shared_ptr потокобезопасно за счет атомарности счетчика ссылок)
А хранить ссылки на один shared_ptr небезопасно

mascai
Автор

Спасибо за проделанную работу, многие видео на Вашем канале показались мне полезными). Если будет время сделать некоторые видео по многопоточке, то было бы здорово!
Предлагаю свой вариант функции с мютексом.

void handle_message()
{
if (!g_messages.empty())
{
std::string str;

{
lock(m_mutex);
str = g_messages.front();
g_messages.pop();
}


}
}

vladyslavtsymbal
Автор

Благодарю за проделанную работу.
И хотелось бы уточнить некоторые моменты.
Насколько бы Вы оценили собеседуемого от 0 до 10?
Он прошел собеседование или нет?
На какую позицию он претендует junior или middle?
Благодарю.

ga
Автор

39:04 Перенес вызов long_calculation_with_message после вызова pop из очереди и сломал изначальную программу. Может pop после обработки был важен на тот случай если сейчас long_calculation_with_message не сможет обработать сообщение?

mpmuradov
Автор

Можно было бы спросить про счётчик weak_ptr, где он хранится. Чем make_shared отличается от простого объявления shared_ptr

cyrilanisimov
Автор

почему же у меня кейсы на собесах типо реализуйте алгоритм решения задачи используя красно-черное дерево и напишите рабочий код за 5 минут..
Глядя на такие кейсы становится как-то грустно, или мне так не везёт или не в те компании собеседуюсь?

Юрий-охй
Автор

Вирт. Метод в конструеторе ub. В деструкторе нужно гарантировать отсутствие исключений.

IgorPolozov-uufn
Автор

void calculation (std::mutex& m1, std::mutex& m2, const std::vector<int>& data) {

std::lock_guard<std::mutex> lock1(m1);
std::lock_guard<std::mutex> lock2(m2);

}
Можете пояснить где здесь deadlock ? Вроде должна быть еще такая ф-я с обратным порядком lock, тогда бы был deadlock. А тут то что? Ну лочится m1, лочится m2, разлочивается m2, разлочивается m1. m1 является основным и m2 вообще не участвует.

ВалерийАрефьев-эы
Автор

Пожалуйста добавьте тайм-коды по вопросам

Вальдес-зй
Автор

В примере с многопоточкой реализовали атомарность доступа к контейнеру, но атомарность алгоритма под сомнением: иначе говоря строки на обработку могут пойти не в том порядке, в котором они были в очереди, так задумано?

zofktulhu
Автор

Да, что за такое - спрашиваете кучу интересных аббревиатур и ответ самому искать

dgdarkking
Автор

Крутые вопросы, только я не понял: это собеседование или уничтожение?) если человек плавает в листе и векторе - стоит сбавить планку)

evgenyrozhnowsky
Автор

30 минута - вопрос о темплейтах, человек, на мой взгляд, мог ответить, зачем задавать вопрос, если не дожидаетесь ответов? Видно же, что с терминологией есть проблемы, но знания присутствуют, почему бы не попытаться их вытащить, разве не этим должен заниматься интервьюер?

igorilich
Автор

Вот интересно, почему все вопросы настолько низкоуровневые и где ООП с наследованием, инкапсуляцией, композицией, контрактами, паттернами?

Вальдес-зй
Автор

Почему нельзя больше чем на x2 поставить, ну супер медленно

brucewayne
Автор

Привет, ты клёвый парень, но почему такие боты на собесе?

idodoqdo
Автор

А регекспы не юзаете? Просто интересно

Вальдес-зй