Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (1): [1]   

> Без описания
band
Отправлено: 18 Мая, 2017 - 08:31:51
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 8
Дата рег-ции: Май 2017  
Репутация: 0




Добрый день, уважаемые знатоки. Есть 2 скрипта которые работают параллельно. 1 скрипт мониторит появление картинки, второй скрипт совершает некие действия. В случае появление картинки (первый скрипт) необходимо поставить на пауза выполнения второго скирпта и выполнить действия. После определенных действий, необходимо запустить выполнение второго скрипта с начала. В программе AHK можно было задать горячие кнопки для запуска скрипта с начала, пауза и выключить скрипт. Хотелось бы это увидеть в данной программе, или понять, как это можно реализовать самому.
Спасибо.
 
 Top
Dantes3000
Отправлено: 19 Мая, 2017 - 09:57:21
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1465
Дата рег-ции: Июнь 2016  
Репутация: 58




делай все в одном скрипте
 
 Top
band
Отправлено: 19 Мая, 2017 - 13:09:41
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 8
Дата рег-ции: Май 2017  
Репутация: 0




 Dantes3000 пишет:
делай все в одном скрипте

Нельзя, т.к. циклы в главном скрипте могут быть продолжительные по времени, а реакция на появление картинки – моментальная )
 
 Top
Dantes3000
Отправлено: 19 Мая, 2017 - 14:52:04
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1465
Дата рег-ции: Июнь 2016  
Репутация: 58




Используй таймер
 
 Top
band
Отправлено: 22 Мая, 2017 - 08:21:16
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 8
Дата рег-ции: Май 2017  
Репутация: 0




 Dantes3000 пишет:
Используй таймер

А не могли бы вы ткнуть носом в пример ? Спасибо.
 
 Top
band
Отправлено: 22 Мая, 2017 - 12:30:55
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 8
Дата рег-ции: Май 2017  
Репутация: 0




Разобрался, с enabletimer(0) и CREATE_TIMER(0, 200)
Но тут возникла проблема, если в скрипте есть pause(3000); в данном случае таймер не отработает.
 
 Top
Kibor
Отправлено: 22 Мая, 2017 - 12:59:09
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8095
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 355




mu_pause(3000);



function mu_pause(int p)
{
for (int t=gettime(); gettime()-t<p; sleep(10)){}
}
 
 Top
band
Отправлено: 22 Мая, 2017 - 15:56:20
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 8
Дата рег-ции: Май 2017  
Репутация: 0




 Kibor пишет:
mu_pause(3000);



function mu_pause(int p)
{
for (int t=gettime(); gettime()-t<p; sleep(10)){}
}

Оригинальный костыль, разбить паузу по 10 мс.
Спасибо за помощь. Только это ведь касается не только паузы, ну и плавного передвижение мыши например, в момент передвижения, пока мыщь не остановилась, таймер не отработает тоже.
Я конечно прошу прощение за назойливость, но есть такие необходимости.
 
 Top
Kibor
Отправлено: 22 Мая, 2017 - 16:06:43
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8095
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 355




Это таймер, а не многопоточность. Не надо путать.
Таймер ПРЕРЫВАЕТ выполнение кода в момент своего исполнения.
При грамотно составленном алгоритме проблем не возникает.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by