- Регистрация
- 24.08.2015
- Сообщения
- 19
- Благодарностей
- 1
- Баллы
- 3
В свиче 76 условий, при выполнении поиска сопоставлений оператива грузится до 900 метров, проц до 40 процентов. Как с этим бороться?
76 разных веток, или все 76 в однин экшен идут?В свиче 76 условий, при выполнении поиска сопоставлений оператива грузится до 900 метров, проц до 40 процентов. Как с этим бороться?
http://saveimg.ru/show-image.php?id=ea26a35b43777fc0cb62371426bf5522Фигасе у вас свич, а можно скрин, так, глянуть просто?
ps Мне кажется на шарпе будет быстрее работать
не понял вопроса, в силу малых знаний зенки, но думаю на скрине видно)76 разных веток, или все 76 в однин экшен идут?
то что их много это ни говорит что дом значит строить многоэтажный, я вижу что первые веток штук 15 идут в один кубик, так это можно в одном кубике сделатьесть много условий, будет еще больше) но смысл в том что при некоторых разных условиях, нужно выполнять одинаковые блоки, как оптимизировать? не понимаю)
string sss = project.Variables["sss"].Value; // переменная свитча
if(sss == "a") throw new Exception("не найдено");
if(sss == "b") throw new Exception("не найдено");
if(sss == "c") throw new Exception("не найдено");
if(sss == "d") throw new Exception("не найдено");
Свитч сравнивает значение переменной со своими значениямиКакой экшен стоит перед перед ним и что сравнивает switch?
http://saveimg.ru/show-image.php?id=425d8ed7492146acac7df811b3e76095думаю поймёшь что к чему, вместо a, b, c, d - свои значения с чем сравниваешь, если нет такого значения то по зелённой
Код:string sss = project.Variables["sss"].Value; // переменная свитча if(sss == "a") throw new Exception("не найдено"); if(sss == "b") throw new Exception("не найдено"); if(sss == "c") throw new Exception("не найдено"); if(sss == "d") throw new Exception("не найдено");
string sss = project.Variables["sss"].Value; // твоя переменная свитча
if(sss == "a") return null;
if(sss == "b") return null;
if(sss == "c") return null;
if(sss == "d") return null;
Изначально их и было много)Да изначально неверный подход... тем более если будет расти... или сразу бить на отдельные проекты или же есть возможность вложенных - а так еще чуть чуть и оно встанет
Лучше сейчас переделай по человечески...
Значит как и написал - изначально не верно началиИзначально их и было много)
Помогите, люди добрые! Допишите, пожалуйста, на С то что я синим дописал. Очень надо.
string sss = project.Variables["sss"].Value; // переменная свитча
if (sss == "a")
project.Variables["xxx"].Value = "...";
throw new Exception("Не найдено!");
string sss = project.Variables["sss"].Value; // переменная свитча
if (sss == "a")
project.Variables["xxx"].Value = "...";
return null;
Надо, что бы, как в первой версии, если не нашел "а" шел по зеленой, если нашел "а" устанавливал значение переменной и шел по красной. Поправьте, пожалуйста.
string sss = project.Variables["sss"].Value;
if (sss == "a")
{
project.Variables["xxx"].Value = "...";
throw new Exception("Не найдено!");
}
string sss = project.Variables["sss"].Value;
if (sss != "a") return "ok";
project.Variables["xxx"].Value = "...";
throw new Exception("Не найдено!");
Обращаем Ваше внимание на то, что данный пользователь заблокирован.
Не рекомендуем проводить с BaronArtem какие-либо сделки.
Смотря для чего) для одного блок переключений много.900 метров оперативы это много?