Cделать жесткий брейк C# кубика

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
ну собственно пипец устал ждать, выполнения кубика С#, хоть и пытаюсь его остановить. Архи сложная задача сделать брейк ?
 
Последнее редактирование:
  • Спасибо
Реакции: orka13

ibred

Client
Регистрация
04.04.2015
Сообщения
3 835
Благодарностей
3 552
Баллы
113

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
так поток не зависает, он просто выполняется, а вот прервать его нет никакой возможности. Там длинная логика. И что делать ? Можно проджект закрыть и открыть, но зачем такие сложности, при том что проджект тоже долго грузится ... Нужен жесткий Kill
 

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
Ну и к тому же, если этот код, который вы привели, работает, то почему бы по умолчанию на уровне программы не добавлять его в проджекте ? чтоб по кнопки стоп, была моментальная остановка. Зачем помнить о том что нужно вот эти предохранители добавить в проект ?
а вот это && !Global.Variables.IsDebugMode . Дебуг мод в проджекте по умолчанию или его как то надо активизировать ?
 

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
что за бред про ограничения ? ограничения вон в кубиках, там все разрабы сделали. и проверки и прерывания. если полез в C# в голый код, то и вся ответственность на тебе за кривой код. а что бы код не был кривым надо повышать знания , а не выкатывать разработчикам предъявы, типа сделайте ограничение для моих кривых рук. уже который пост вижу с этим бредом. Новый тренд какой то пошел что ли ?
зеннопостер это не песочница для начинающих. и надеюсь никогда не превратиться в нее.
C#:
if(((ZennoLab.InterfacesLibrary.ProjectModel.Collections.IContextExt)project.Context).IsInterrupted) throw new Exception("Внешнее прерывание");
if(Global.Variables.IsProjectMaker && !Global.Variables.IsDebugMode)  throw new Exception("Внешнее прерывание");
вот этот код прервет выполнение мертвого цикла. больше ничего не надо включать.
 
  • Спасибо
Реакции: Oleg1987

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
уже который пост вижу с этим бредом.
так может пора задуматься что в отладчике это фишка востребована по умолчанию. Если ты все любишь собирать - так начинай с того что компилятор на ассэмблире собирай сначала, а потом код свой ... Умник блин.
Пол года назад я знал про эти предохранители, были без надобности, забыл напрочь. И чего ? какждый раз из-за ерунды ломать себе голову ?
 

luk911

Client
Регистрация
17.01.2013
Сообщения
1 542
Благодарностей
579
Баллы
113
C#:
if(((ZennoLab.InterfacesLibrary.ProjectModel.Collections.IContextExt)project.Context).IsInterrupted) throw new Exception("Внешнее прерывание");
if(Global.Variables.IsProjectMaker && !Global.Variables.IsDebugMode)  throw new Exception("Внешнее прерывание");
К тому же этот код не работает глобально, и его надо ставить в каждый цикл.
 
Последнее редактирование:

Oleg1987

Client
Регистрация
11.08.2014
Сообщения
1 228
Благодарностей
784
Баллы
113
Смысл в том что логика в кубике длинная.
Разбейте логику на неск. кубиков. Вынесите ее в общий код/библиотеку и там разделите на методы. А по поводу прерывания - всегда найдется 100500 способов наговнокодить так, что прервать выполнения кода возможно только путем убийства главного процесса мейкера
 
  • Спасибо
Реакции: luk911 и Phoenix78

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
так может пора задуматься что в отладчике это фишка востребована по умолчанию. Если ты все любишь собирать - так начинай с того что компилятор на ассэмблире собирай сначала, а потом код свой ... Умник блин.
Пол года назад я знал про эти предохранители, были без надобности, забыл напрочь. И чего ? какждый раз из-за ерунды ломать себе голову ?
и в самом деле, чего тебе голову ломать ? пусть лучше у разработчиков голова болит как сделать так что бы любой говно код можно было превратить в конфетку :-)
процедуры, функции, модульное программирование, объектно-ориентированное программирование все есть, нет же все кому не лень валят в один кубик в один глобальный цикл, а потом орут что у них отладчик завис :-)

вот тебе совет от умника, выноси куски кода в общий код в виде процедур, функций и своих классов , тогда и не будет у тебя проблем с непонятными зависаниями и долгими обработками. и да в каждый цикл вставлять надо эти строчки. если будет лежать в общем коде на читабельность ни как не повлияет, так как функция вызывается одной строкой. плюс такого подхода , что общий код можно хранить в текстовом файле и загружать сразу в несколько проектов. при изменении в файле сразу повлияет на все проекты. так ты решишь проблему забывчивости через год или полгода, когда решишь вернуться к коду.
 
  • Спасибо
Реакции: luk911

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)