Size: a a a

2020 March 25

YP

Yegor Popov in pro.cxx
Только без возни с процессами в ос
источник

AS

Anatoly Shirokov in pro.cxx
Yegor Popov
Ребята, вопрос. Допустим, у меня есть простое консольное приложение. Мне нужно сделать так, чтобы пользователь (я) мог создать только 1 инстанс этого приложения. Как это сделать?
мьтекс херач или эксклюзивно открывай файл: не удалось заблокировать мьютекс, не удалось открыть файл - выходим
источник

AN

Alexander N in pro.cxx
При форвардинге аргументов(например том же emplace) я так понимаю ничего никуда не копируется и не перемещается
источник

AT

Andrew Titov in pro.cxx
Alexander N
Куда не завезли?
В С++ в обязательном (guaranteed) порядке.
источник

eb

ed braed in pro.cxx
Anatoly Shirokov
мьтекс херач или эксклюзивно открывай файл: не удалось заблокировать мьютекс, не удалось открыть файл - выходим
А почему мьютекс должен сквозь процессы быть видимым?
источник

AS

Anatoly Shirokov in pro.cxx
ed braed
А почему мьютекс должен сквозь процессы быть видимым?
поименованный виден
источник

YP

Yegor Popov in pro.cxx
А нельзя при первом запуске, например, задать значение общедоступной переменной IsInstanced = true, и при каждом запуске проверять ее?
источник

AS

Anatoly Shirokov in pro.cxx
Yegor Popov
А нельзя при первом запуске, например, задать значение общедоступной переменной IsInstanced = true, и при каждом запуске проверять ее?
нет, и похоже это уже уровень @supapro
источник

YP

Yegor Popov in pro.cxx
Anatoly Shirokov
поименованный виден
слишком сложно для меня
источник

ПК

Побитый Кирпич in pro.cxx
ed braed
А почему мьютекс должен сквозь процессы быть видимым?
На винде мьютексы используют для синхронизации процессов
источник

ПК

Побитый Кирпич in pro.cxx
Yegor Popov
А нельзя при первом запуске, например, задать значение общедоступной переменной IsInstanced = true, и при каждом запуске проверять ее?
Это и есть захватить мьютекс
источник

AN

Alexander N in pro.cxx
Andrew Titov
В С++ в обязательном (guaranteed) порядке.
Он где-то есть где-то нет т.е. вроде в clang/gcc был или я путаю. Я так понимаю это работает только для относительно несложных функций
источник

YP

Yegor Popov in pro.cxx
Побитый Кирпич
Это и есть захватить мьютекс
Подскажите литературу, сам я не разберусь
источник

YP

Yegor Popov in pro.cxx
Куда копать
источник

ПК

Побитый Кирпич in pro.cxx
Yegor Popov
Подскажите литературу, сам я не разберусь
Читай про мьютексы на docs.microsoft
источник

ПК

Побитый Кирпич in pro.cxx
Alexander N
Он где-то есть где-то нет т.е. вроде в clang/gcc был или я путаю. Я так понимаю это работает только для относительно несложных функций
Он везде есть, хотят сделать обязательным
источник

eb

ed braed in pro.cxx
Anatoly Shirokov
поименованный виден
А в std есть интерфейс для именованных мьютексов?
Чёт не нахожу вроде..
источник

AN

Alexander N in pro.cxx
Оо это капец усложнение компилера
источник

ПК

Побитый Кирпич in pro.cxx
ed braed
А в std есть интерфейс для именованных мьютексов?
Чёт не нахожу вроде..
Нету
источник

K

Konstantin in pro.cxx
Побитый Кирпич
Читай про мьютексы на docs.microsoft
Тебе нужны мьютексы для межпроцесного взаимодействия
источник