@danij_com

Как заставить консольное c++ приложение работать в фоне?

Здравствуйте.
Нужно убрать окно консоли, и как-то сделать так, чтобы приложение не завершалось после выполнения кода.
Т.е. у меня есть несколько фоновых потоков, которые выполняют определенные действия, но запуская все потоки из main, приложение завершается
int main(int argc, char *argv[])
{
	std::thread thr(SetView);
	thr.detach();
        std::thread thr2(SetListen);
	thr2.detach();
	return 0;
}

А если потоки сделать не фоновыми, тогда работа не уходит дальше запуска первого потока (в потоках бесконечные циклы).
  • Вопрос задан
  • 1327 просмотров
Решения вопроса 1
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
Чтобы избавиться от консоли, правильнее всего запускать приложение как службу в windows
https://code.msdn.microsoft.com/windowsapps/CppWin...
https://habrahabr.ru/post/71533/
или как демон в unix
https://stackoverflow.com/questions/17954432/creat...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Sumor
Нужно дождаться завершения потоков.
int main(int argc, char *argv[])
{
  std::thread thr(SetView);
  thr.detach();
  std::thread thr2(SetListen);
  thr2.detach();
  thr.Join();
  thr2.Join();
  return 0;
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы