|
399 / 318 / 53
Регистрация: 14.08.2014
Сообщений: 1,010
|
||||||
.NET 4.x Остановика/возобновление работы программы02.10.2014, 16:55. Показов 1820. Ответов 9
Метки нет (Все метки)
Ребята, а как можно остановить и возобновить работу программы?
Пришла сейчас в голову мысль, а что если теоретически программе бы нужно было обрабатывать очень много файлов и возникла бы потребность на время остановить программу, а через какое-то время возобновить работу с того места, где была сделана пауза. Допустим вот код:
Нашел некий Thread.Sleep(1000), но не пойму как его внедрить в указанный выше код. Или я возможно не то что-то нашел и есть другие методы? Еще смущает то, что в Thread.Sleep(1000) необходимо указывать время в миллисекундах на которое будет сделана остановка. А если неизвестно на какое время необходима пауза, то как быть? Буду благодарен за любую помощь.
0
|
||||||
| 02.10.2014, 16:55 | |
|
Ответы с готовыми решениями:
9
Возобновление работы закрытого окна
Возобновление работы DFS-R |
|
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
|
||||||
| 02.10.2014, 18:38 | ||||||
0
|
||||||
|
37 / 37 / 10
Регистрация: 16.09.2014
Сообщений: 167
|
|
| 02.10.2014, 19:30 | |
|
Остановка на определенном моменте это.Вот как продолжить после этого программу остается загадкой
1
|
|
|
Почетный модератор
23251 / 9163 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
|
|
| 02.10.2014, 19:34 | |
|
Вот так взять и остановить - едва ли получится без костылей.
В данном случае рассматривается прерывание цикла. При этом прерывании нужно запоминать счетчик последней итерации, а при продолжении цикл начинать с нее.
0
|
|
|
121 / 114 / 62
Регистрация: 27.07.2014
Сообщений: 225
|
|
| 02.10.2014, 19:37 | |
|
Ничего загадочного, код в поток, у потоков есть свойства позволяющие приостановить и возобновить работу.
0
|
|
|
1303 / 509 / 63
Регистрация: 09.08.2012
Сообщений: 2,056
|
|
| 02.10.2014, 19:47 | |
|
Памирыч, у меня такая мысль вначале тоже созреда (счетчик вести, а потом с нужного стартовать). Да подумал есть наверно более правильные и готоые решания
0
|
|
|
Почетный модератор
23251 / 9163 / 1084
Регистрация: 11.04.2010
Сообщений: 11,014
|
|
| 02.10.2014, 20:04 | |
|
Точно, еще же эти потоки, забыл я про них.
Хм, а что - если прервать поток прямо когда в файл будут писаться байты, можно ли добиться случая когда запишется только часть, т.е.
0
|
|
|
399 / 318 / 53
Регистрация: 14.08.2014
Сообщений: 1,010
|
|
| 02.10.2014, 20:28 [ТС] | |
|
Еще что самое фиговое, на забугорных форумах народ пишет, что крайне не рекомендуется использовать в потоках Suspend, если точнее, то Thread.Suspend() Мол в таком случае можно запросто словить баги, т.к. не контролируется то, что сейчас делает поток и при попытке возобновления работы программы может произойти крах/баг/...опа
. Фиговость в том, что почти все найденный мною примеры используют Suspend().В общем читаю пока литературу и курю форумы. Пока понял одно, что однозначно проще всего обернуть в поток, но как это правильно сделать я пока не понял.
0
|
|
|
399 / 318 / 53
Регистрация: 14.08.2014
Сообщений: 1,010
|
|
| 02.10.2014, 21:18 [ТС] | |
|
1
|
|
|
121 / 114 / 62
Регистрация: 27.07.2014
Сообщений: 225
|
|
| 02.10.2014, 21:41 | |
Сообщение было отмечено Памирыч как решение
Решение
Дядя Корней, В таком случае в поток вводится переменная-переключатель, Когда она равна True твой код выполняется, когда False, нет. Поток работает всегда.
Если хочешь реальной приостановки, глянь в сторону EventWaitHandle
2
|
|
| 02.10.2014, 21:41 | |
|
Помогаю со студенческими работами здесь
10
Возобновление работы системы Возобновление работы потока в AsyncTask Пауза/возобновление работы потока Пауза и возобновление работы по нажатию клавиши Пауза и ручное возобновление работы скрипта Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|