C#:
lock(SyncObject) {
var gbVar = project.GlobalVariables["razdva", "globVar3"];
gbVar.Value = Convert.ToInt32(gbVar.Value.ToString())+1;
project.Variables["currentValue"].Value = gbVar.Value.ToString();
}
lock(SyncObject) {
var gbVar = project.GlobalVariables["razdva", "globVar3"];
gbVar.Value = Convert.ToInt32(gbVar.Value.ToString())+1;
project.Variables["currentValue"].Value = gbVar.Value.ToString();
}
Возможно глобальная переменная содержит пустоту или недопустимые значения, например буквы, а вы пытается привести в int(целочисленный тип данных) Возможно так же, что число не целое.project.GlobalVariables["razdva", "globVar3"]
Выполнение действия CSharp OwnCode: increment counter and store value to local variable. Глобальная переменная razdva.globVar3 не инициализирована
Сорри, я там поторопился с ответом. Все нормально в вашем коде. Просто проверку значений нужно делать в переменныхВыполнение действия CSharp OwnCode: increment counter and store value to local variable. Глобальная переменная razdva.globVar3 не инициализирована
Да, проблема в том, что в переменной пустота, вопрос в том, что он раз через раз сам выставляет значение на 0Сорри, я там поторопился с ответом. Все нормально в вашем коде. Просто проверку значений нужно делать в переменных
Ну я не знаю, как у вас шаблон работает. Причину проблемы выявили. Остается либо делать проверку на пустоту, либо править логику шаблонаДа, проблема в том, что в переменной пустота, вопрос в том, что он раз через раз сам выставляет значение на 0
Ну я не знаю, как у вас шаблон работает. Причину проблемы выявили. Остается либо делать проверку на пустоту, либо править логику шаблона
Вам точно нужна глобальная переменная? Потому что глобальная переменная одна для нескольких потоков в ЗП, меняя в одном потоке, меняется и в другом.Посмотреть вложение 108264
Создаю глабольную переменную, если она уже существует, то увеличиваю ее значение на 1 во втором блоке. В ПМ все работает хорошо, но когда запускааю проект в многопотоке в ЗП то вылезает ошибка, которую кидал выше
Попробую объяснить. У меня есть условно текстовик с данными такого форматаВам точно нужна глобальная переменная? Потому что глобальная переменная одна для нескольких потоков в ЗП, меняя в одном потоке, меняется и в другом.
Правильнее было бы брать данные из файла построчно с удалением.Попробую объяснить. У меня есть условно текстовик с данными такого формата
"1
2
3
4"
Для того чтобы не брать одно и тоже значение из текстовика, я увеличиваю значение глобальной переменной, локальная переменная в свою очередь становится равной глобальной переменной. Локальная переменная = строке, которую берет поток для обработки.