Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
TamaGOch
9 / 9 / 0
Регистрация: 11.12.2012
Сообщений: 152
#1

Закрыть форму и остановить выполнение вечных циклов - C++

13.01.2014, 19:56. Просмотров 360. Ответов 0
Метки нет (Все метки)

Если закрываю приложение во время исполнения цикла while (true) или иного цикла, условие выхода из которого не зависит от моего приложения, программа продолает висеть в процессах. Вопрос, как прекратить работу приложения вместе с выполняемыми им процессами?
По сути дела, можно ввести логическую переменную, типа AppIsActive, при закрытии формы присваивать ей ложное значение. Соответственно при начале присваивать истинное и выполнять циклы while (AppIsActive == true). Однако возникает неудобство с тем, что вечные циклы есть не только в главном файле формы, но и в собственных модулях.
Другой вариант, оставлять таймер, и если цикл не выходит по причинам, предустмотренными приложением, пусть прерывается из-за таймера. Однако тоже как-то не очень хороший вариант.
Есть ли какие-нибудь маркеры у форм, говорящие, например, о закрытии формы, Visible или что-то подобное.
а лучше всего, ккую-нибудь функцию прерывания выполнения программы

Добавлено через 17 минут
решение найдено Завершить все потоки какие есть при закрытии программы
C++
1
System::Diagnostics::Process::GetCurrentProcess()->Kill();
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.01.2014, 19:56     Закрыть форму и остановить выполнение вечных циклов
Посмотрите здесь:

Как остановить выдачу ошибки? - C++
repeat: if(e<=mode){ cout << "\nИгрок №" << e << a << endl; cin >> sim >> b;//записываем в строку для...

Как остановить программу на минуту? - C++
Гуглил минут тридцать пять на все лады- нет. Там и прием витамина С перед сном, и все виды остановок чего и кем угодно- только не...

как остановить проигрывание звука - C++
Привет) пишу программу в WindowsForm. на форме есть кнопка, которая открывает WAV-файл и проигрывает (код взят отсюда...

Крестики-Нолики: остановить программу при победе - C++
крестики нолики вродебы всё учёл, но не могу остановить программу когда один из игроков выйграл. сообщение о победе выводится. но цикл...

как остановить ввод, когда text[i] доходит до маркера? - C++
Возникла проблема, не знаю как правильно сделать это: остановить ввод при достижении маркера. У меня текст в файле имеет размер меньший,...

Остановить процесс загрузки файла в память на конкретном адресе - C++
не знаю на сколько понятен получился заголовок темы, объясню подробнее. запуская исполняемый файл на выполнение, он начинает загружать в...

Как остановить исполнение консольного приложения без выхода из него? - C++
То есть, если пишу exit(1); , то консоль закрывается, но там есть информация о ошибке, которую должен увидеть пользователь. Какие есть...

Оптимизация циклов - C++
я был очень удивлён, когда путём простой перемены мест внешнего цикла с внутренним проиводительность метода увеличилась на 20% :) ...

Различие циклов - C++
Подскажите, пожалуйста. Приведенные циклы работают одинаково? for(int x : group.g_players) { player.groupID = 0; ...

Остановить цикл ввода последовательности, если введенное значение равно нулю. - C++
В простую переменную последовательно вводятся числа. Окончание ввода 0. Сколько чисел больше своих соседей слева и справа. Вопрос в том как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru