Оказывается, мы вопросы кольцевания обсуждали еще в августе месяце.
В этом топике ((не поверите - перечитал топик с самого начала)).
Все. У меня текст кончился

Редактировалось 1 раз(а), последний 2020-01-14 10:35:07
Ответов: 9906
Рейтинг: 351
|
|||
Сдуреть не встать.
Оказывается, мы вопросы кольцевания обсуждали еще в августе месяце. В этом топике ((не поверите - перечитал топик с самого начала)). Все. У меня текст кончился ![]() Редактировалось 1 раз(а), последний 2020-01-14 10:35:07 |
|||
карма: 9 |
| ||
Голосовали: | Tad |
Ответов: 4634
Рейтинг: 751
|
|||
Ещё и я свои 5 копеек вставлю.
Igor08 писал(а): Если у меня программа вылетает при кольцевании с ошибкой c0000005, наверно тогда переполняется стек вызовов функций или теряется связь с данными? Возможно этот стек как-то очистить?Igor08 писал(а): Такая ошибка появляется, если не использовать DeferredEvent. С этим элементом программа работает до определенного момента, потом не выполняет расчеты до конца.Igor08 писал(а): А после hub они выполняются почти параллельно, одновременно можно сказать? Или пока по одной ветки все не выполнится после hub, другая выполнятся не будет?Igor08 писал(а): Надо чтобы в программе много раз выполнялись одни и те же элементы.Если есть ответ "сколько" в виде числа - значит используется компонент For вкладки "Логика". Если ответа "сколько" нету, то должен быть ответ "а когда следует прекратить повторять?". В этом случае используется компонент Repeat с проверкой условия в нём самом, либо условие ставится "1=1" ("повторять бесконечно"), а проверка условий для прекращения повтора делается в самом событии компонента с вызовом Если твоя задача, условно, "электронные часы", когда просто нужно с каким-то интервалом повторять некоторое действие - используй компонент Timer. Если нужно остановить таймер - опять же, определись при каком условии он должен остановиться. Итак, у тебя, вероянто, наличествует логика "если произошло то и то (например, случилась ошибка) - надо повторить операцию". Что ты и решил кольцеванием. Это, как я понимаю, ближе к мышлению в бытовой жизни. Ты должен переделать мышление: "повторять нужное мне действие до тех пор, пока не произойдёт то и это". И использовать для этого компонент Repeat с условием "1=1", проверять условие после каждого повтора (или перед) и вызвать Попробую подытожить: 1) Неправильная логика: выполнить действие -> проверить условие -> повторить действие 2) Правильная логика: циклично выполнять действие -> проверить условие -> прекратить повтор Редактировалось 16 раз(а), последний 2020-01-15 11:47:42 |
|||
карма: 26 |
|
Ответов: 44
Рейтинг: 0
|
|||
А если программу разбить на dll библиотеки и вызывать их в основной программе, так будет работать? Тоже кольцевание получится.
Редактировалось 1 раз(а), последний 2020-01-14 20:01:02 |
|||
карма: 0 |
|
Ответов: 167
Рейтинг: 7
|
|||
Igor08 писал(а): А если программу разбить на dll библиотеки и вызывать их в основной программеWHAT? ![]() Igor08 писал(а): Тоже кольцевание получится.По сути dll - просто кусок программы в двоичном формате , который она может выгружать и загружать в память. Он работает по тем-же принципам, что и программа . ПОЖАЛУЙСТА ПОЙМИТЕ, ЧТО Netspirit писал(а): Кольцевание НЕЛЬЗЯ использовать. Точка. Тогда такой ошибки не будет.Netspirit писал(а): используйте компонент Repeat с проверкой условия в нём самомЗачем вы кидаете под ноги грабли, а затем ходите по ним? ЗАЧЕМ? Редактировалось 2 раз(а), последний 2020-01-14 20:06:37 |
|||
карма: 0 |
|
Ответов: 44
Рейтинг: 0
|
|||
Я просто спросил будет так программа работать или нет
|
|||
карма: 0 |
|
Ответов: 167
Рейтинг: 7
|
|||
ВОТ! СРАВНИ КАК У ТЕБЯ, И КАК ДОЛЖНО БЫТЬ БЕЗ БАГОВ!
P.S: красные - не обязательные элементы зелёные - ЧТО ТЕБЕ НУЖНО ПОНЯТЬ!
![]() --- Добавлено в 2020-01-14 20:22:07 Igor08 писал(а): Я просто спросил будет так программа работать или нетпример выше смотри. --- Добавлено в 2020-01-14 20:33:54 Так короче :
--- Добавлено в 2020-01-14 20:35:43 А теперь разъясните хоть что-нибудь про второй вариант схемы, которую вы выложили ( я ничего не понял в той схеме ![]() Редактировалось 5 раз(а), последний 2020-01-14 20:35:43 |
|||
карма: 0 |
|
Ответов: 44
Рейтинг: 0
|
|||
Я их приводил так просто для примера, схемы с кольцеванием.
|
|||
карма: 0 |
|
Ответов: 167
Рейтинг: 7
|
|||
Но его лучше не использовать
![]() |
|||
карма: 0 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Netspirit писал(а): и вызвать doBreakСам ты doBreak. Два раза ![]() ![]() Редактировалось 1 раз(а), последний 2020-01-15 00:05:30 |
|||
карма: 9 |
|
Ответов: 44
Рейтинг: 0
|
|||
Netspirit, спасибо за подсказку, что бесконечный цикл repeat с условием, это замена кольцеванию.
|
|||
карма: 0 |
|
Ответов: 4634
Рейтинг: 751
|
|||
Igor08 писал(а): Netspirit, спасибо за подсказку, что бесконечный цикл repeat с условием, это замена кольцеванию.Galkov писал(а): Сам ты doBreak![]() Имелось в виду doStop. |
|||
карма: 26 |
|