Кибор » Кибор - Интегрированная среда разработки ботов » О программе Кибор » Версия 5.42 Оператор looptime - Выполнение цикла по времени

Страниц (3): « 1 [2] 3 »
 

11. Zireael - 10 Сентября, 2018 - 10:30:45 - перейти к сообщению
 Цитата:
что можно запускать, например, функцию и через указанный промежуток времени она завершится...

Можно и так. В функции 'Блок кода', в котором:
CODE:
looptime (10000)
{
// тут нужные действия
}
12. Dantes3000 - 10 Сентября, 2018 - 10:42:20 - перейти к сообщению
konctantin777 , looptime(10000) fun(); это то же самое, что
CODE:

looptime(10000)
{
fun();
}


после операторов if for loop looptime while можно без скобок писать 1 действие, функцию. В учебнике написано
13. Kibor - 10 Сентября, 2018 - 11:50:25 - перейти к сообщению
Dantes3000 , и else
14. faradej - 10 Мая, 2023 - 14:37:08 - перейти к сообщению
Этот метод имеет преимищества перед конструкциями подобного вида?

CODE:
for (int q = 0; q < 20; q++) {
sleep(100);
}
15. Kibor - 10 Мая, 2023 - 16:14:58 - перейти к сообщению
Это все одно и то же.
Только разный синтаксис для удобства программирования различных ситуаций.
Для ассемблера все циклы выглядят через jmp. Ну примерно.
Все if, while , а в Кибор loop выглядят одинаково внутренне.
Ну в looptime учитывается время цикла.
Для этого его надо куда то записать. Где то сравнить и перейти на нужный адрес.
Просто программировать это не надо.
16. KBSN - 14 Августа, 2023 - 04:45:25 - перейти к сообщению
Добрый день. Не могу понять, почему он постоянно ожидает в слипе сверх установленного времени, указываешь 5 секунд, и если событие для срабатывания в эти 5 секунд не произошло, то он может вечно ожидать, а как появляется событие, то сразу схлопывается, и выполняет следующие действия.
Версия стандартная, не покупная.
17. konctantin777 - 14 Августа, 2023 - 04:48:55 - перейти к сообщению
Код ?
18. neba2101 - 13 Июня, 2025 - 12:42:31 - перейти к сообщению
CODE:
int d=0;
loop(1000)
{
looptime(1)
{
d++;
break;
}
}
messagebox(d);


Баг? messagebox(d); выдаёт разные значения.
19. Kibor - 13 Июня, 2025 - 12:48:54 - перейти к сообщению
С чего это баг..

у вас идут не синхронизированные задачи.
чем при разных загруженностях и на разных компьютерах за 1 секунду выполнится разное количество циклов.
20. neba2101 - 13 Июня, 2025 - 13:52:43 - перейти к сообщению
 Kibor пишет:
С чего это баг..

у вас идут не синхронизированные задачи.
чем при разных загруженностях и на разных компьютерах за 1 секунду выполнится разное количество циклов.


Это я понимаю, но тут вызывается 1000 раз looptime(1) (цикл по времени на 1 мс) и с выходом после d++. Вроде как d по завершению должно быть равным 1000 или looptime(1) не гарантирует срабатывания? Получается что looptime(1) не вызывается несколько раз из 1000. Тут не должно быть разное кол-во циклов т.к. в looptime(1) есть выход через break после d++;

Powered by ExBB FM 1.0 Final