Re[14]: Прокритикуйте код на C#
От: koandrew Канада http://thingselectronic.blogspot.ca/
Дата: 12.01.11 18:28
Оценка: +1
Здравствуйте, Sinix, Вы писали:

S>Мы же не в этюдах, нет?

S>Для инженерных тем "делать надо так" == "Если не понимаешь последствий, по-другому лучше не делать. Чтобы толково объяснить — почему, придётся пройти ускоренный курс хождения по граблям с глубоким погружением в матчасть. Поскольку ты не сделал этого сам, тебе оно не надо. Так что делать надо так."

Очень странное определение "делать надо так". Я лично эту фразу воспринимаю буквально, а потому, если мой опыт и/или мои знания свидетельствуют об обратном, то я стараюсь обратить внимание автора на этот факт.
[КУ] оккупировала армия.
Re: Прокритикуйте код на C#
От: MozgC США http://nightcoder.livejournal.com
Дата: 13.01.11 00:34
Оценка: +1
Вот, только что, написал 12 SQL-запросов в mysql редакторе, нажимаю "Выполнить", прога немного думает, затем сообщает что "Непредвиденная ошибка" и закрывается. Ну а я пишу запросы снова..
Нет уж, лучше бы он мне просто бы ошибку выдал и не закрывался!

  Скрытый текст
Разработчики наверное тоже гайдлайнов начитались...
Re[6]: Прокритикуйте код на C#
От: Undying Россия  
Дата: 13.01.11 09:30
Оценка:
Здравствуйте, __gas, Вы писали:

__>Лучше представьте куда пошлет Вас директор, когда приложение, беззвучно проглотив очередное исключение, потрет все документы на его машине, а заодно и базы с фин. отчетами.


Как это надо писать код, чтобы непредвиденное исключение удаляло все документы на машины? Ты долго этому обучался?

__>Неожиданное исключение — это однозначная смерть приложения, причем чем скорее — тем меньше вреда.


Надежная программа пишется так, что непредвиденное исключение приводит к провалу текущей операции и ни к чему большему. Закрывать программу это худший из возможных способов обработки непредвиденных исключений.
Re[2]: Прокритикуйте код на C#
От: master_of_shadows Беларусь  
Дата: 13.01.11 11:39
Оценка:
Здравствуйте, HowardLovekraft, Вы писали:

HL>
HL>catThread.Abort()
HL>Thread.CurrentThread.Abort()
HL>

HL>Не лучший способ завершать потоки. Поток нужно уведомлять, что ему следует прекратить работу (через флаги/объекты синхронизации...).
HL>Для того, чтобы завершить поток, достаточно выйти через return из thread function. Это не только в .NET.
HL>CurrentThread.Abort — это готично.

В дополнение: http://tdanecker.blogspot.com/2007/08/do-never-ever-use-threadabort.html
Вызов Thread.Abort() может привести к неприятным последствиям.
Я бы рекомендовал использовать CancellationToken.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.