|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.04.2017, 09:39 | #1 |
Пользователь
Регистрация: 27.03.2015
Сообщений: 25
|
Отловить ошибку System.Threading.ThreadAbortExcepti on
Необработанное исключение типа "System.Threading.ThreadAbortExcept ion" в System.Drawing.dll
Код:
Текст ошибки "Необработанное исключение типа "System.Threading.ThreadAbortExcept ion" в System.Drawing.dll Дополнительные сведения: Поток находился в процессе прерывания." Последний раз редактировалось Sizova; 12.04.2017 в 09:44. Причина: Добавление информации |
12.04.2017, 09:50 | #2 |
Пользователь
Регистрация: 11.04.2017
Сообщений: 64
|
Ну так а в чем проблема-то?
Вы создаете поток, в котором запускаете Splash() Дальше в этот поток вы запускаете Abort, а он и создает исключение в потоке - вот и отлавливайте его кетчем в вашем методе - и обрабатывайте. |
12.04.2017, 10:35 | #3 |
Пользователь
Регистрация: 27.03.2015
Сообщений: 25
|
Ну проблема как бы в том, что у меня это не получается сделать. Если бы получилось отловить catch, то я бы явно сюда не писала
|
12.04.2017, 10:51 | #4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
данный код вообще не имеет смысла.
исключение вполне логично, у вас в процессе инициализации вылетает ошибка. UI поток не должен так завершаться. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
12.04.2017, 11:05 | #5 |
Пользователь
Регистрация: 27.03.2015
Сообщений: 25
|
почему не имеет смысла? мне нужен загрузочный экран перед запуском программы, без этого кода этого не будет.
как по-твоему будет правильнее?) |
12.04.2017, 11:52 | #6 |
Пользователь
Регистрация: 11.04.2017
Сообщений: 64
|
А зачем так делать, через одно место?
Если это UI - то зачем аналом заниматься с потоками? Давно уже придумали асинхронные шаблоны, а недавно вон придумали async/await, а еще раньше модальные окна. Какая задача-то стоит? Если просто вызвать окошко, то вызывайте в момент инициализации - то делайте frm.ShowModal(). И поймите - пока вы увидите окошко, подумаете, что оно выскакивает или нет - ваш комп обработает миллионы операций, не думайте с позиции человека, человек по природе тупит, не может обработать много инфы, а комп быстрый. |
12.04.2017, 14:56 | #7 |
Пользователь
Регистрация: 27.03.2015
Сообщений: 25
|
Кажется, мы друг друга немного не понимаем
Если модально грузить форму, то получается не то, что мне нужно Мне нужно, чтобы пока интерфейс программы загружается, висел этот экран, чтобы не было ощущения как будто программа не запускается Последний раз редактировалось Sizova; 12.04.2017 в 15:01. |
12.04.2017, 15:08 | #8 |
Пользователь
Регистрация: 11.04.2017
Сообщений: 64
|
Нет, я вас понял прекрасно. У Вас инициализация!! проходит дофига времени? Тогда сделайте новый класс с новой формой - и запускайте ее сразу же, контруктор формы запускайте сразу же, до инициализации формы основного класса. А как только инициализация закончилась - закрывайте форму. Вы же пошли в лоб. Да и что такое нужно загружать из того, чего нельзя подгрузить асинхронно уже после загрузки формы основной?
|
12.04.2017, 15:34 | #9 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
нужно инициализацию выносить в иной поток, а не интерфейс.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
IdHTTPServer1 отловить ошибку | Lui | C++ Builder | 0 | 15.02.2013 13:27 |
как отловить ошибку? | madace | Microsoft Office Excel | 1 | 14.02.2013 12:09 |
Нужен совет, как отловить ошибку? | WarHamster | Общие вопросы .NET | 3 | 12.07.2012 16:07 |
Задача на наследование...не могу отловить ошибку | assasin | Общие вопросы C/C++ | 13 | 06.06.2009 17:34 |
Как отловить ошибку в своей проге ??? | Crazyman | Win Api | 8 | 02.09.2008 09:24 |