Author Topic: Поток, не могу решить проблему.  (Read 1334 times)

0 Members and 1 Guest are viewing this topic.

froze777

  • Освоившийся
  • **
  • Posts: 24
    • View Profile
Поток, не могу решить проблему.
« on: March 30, 2016, 09:31:30 AM »
Ребят, помогите доделать, пожалуйста)
Проблема в том что  ифпикче с поиском картинки "fb1.bmp" не вырубается, как бы так сделать чтобы после нахождения картинки и нажатия в нужную область этот ряд:
Code: (clickermann) [Select]
GETSCREEN
IF_PICTURE_IN (9,456, 368,718, "fb1.bmp", -1, 100)
   LCLICK($_return1+200, $_return2)
   WAITMS(100)
END_IF
   waitms(10) // задержка для разгрузки CPU
приостановился и не мешал выполнять работать следующим поискам картинок и выполнению действий.
Приходит мысль например:
после выполнения этого действия:
Code: (clickermann) [Select]
GETSCREEN
IF_PICTURE_IN (9,456, 368,718, "fb1.bmp", -1, 100)
   LCLICK($_return1+200, $_return2)
   WAITMS(100)
END_IF
   waitms(10) // задержка для разгрузки CPU
поставить плюсики ему, и пока плюсики стоят, это действие тоже спит и не мешает выполняться последующим)))0

Code: (clickermann) [Select]
THREAD(fblike)
GETSCREEN
IF_PICTURE_IN (9,456, 368,718, "fb1.bmp", -1, 100)
   LCLICK($_return1+200, $_return2)
   WAITMS(100)
END_IF
   waitms(10) // задержка для разгрузки CPU


GETSCREEN
IF_PICTURE_IN (413,83, 935,708, "fb2.bmp", -1, 100)
   LCLICK($_return1, $_return2)
   WAITMS(100)
END_IF
   waitms(10) // задержка для разгрузки CPU

GETSCREEN
IF_PICTURE_IN (413,83, 935,708, "fb3.bmp", -1, 100)
KEYDOWN(#CTRL)
WAITMS(60)
KEYDOWN(#W)
WAITMS(60)
KEYUP(#CTRL)
WAITMS(60)
KEYUP(#W)
WAITMS(60)

GETSCREEN
IF_PICTURE_IN (522,83, 829,721, "fb5.bmp", -1, 100)
   KEYDOWN(#F5)
WAITMS(60)
KEYUP(#F5)
WAITMS(100)
END_IF

   
   WAITMS(100)
END_IF
   
   
END_THREAD

Может как-то можно сделать это действие как поток в потоке и делать остановку этому потоку и запуск? или это бред?)))

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Поток, не могу решить проблему.
« Reply #1 on: March 30, 2016, 09:55:26 AM »
Так обычное условие IF.

И чего так гетскринов много? Зачем ими зря грузить.
Вот хотя бы так или по другому перетасовать
Code: (clickermann) [Select]
THREAD(fblike)
   GETSCREEN
   IF($vfb1 = 0)
      IF_PICTURE_IN (9,456, 368,718, "fb1.bmp")
         $vfb1 = 1
         LCLICK($_return1+200, $_return2)
         WAITMS(100)
         GETSCREEN
      END_IF
   END_IF
   
   IF_PICTURE_IN (413,83, 935,708, "fb2.bmp")
      LCLICK($_return1, $_return2)
      WAITMS(100)
      GETSCREEN
   END_IF
   
   IF_PICTURE_IN (413,83, 935,708, "fb3.bmp")
      KEYDOWN(#CTRL)
      WAITMS(60)
      KEYDOWN(#W)
      WAITMS(60)
      KEYUP(#CTRL)
      WAITMS(60)
      KEYUP(#W)
      WAITMS(60)
     
      GETSCREEN
      IF_PICTURE_IN (522,83, 829,721, "fb5.bmp")
         KEYDOWN(#F5)
         WAITMS(60)
         KEYUP(#F5)
         WAITMS(100)
      END_IF
      WAITMS(100)
   ELSE
      waitms(30)
   END_IF   
END_THREAD

А про потоки в потоках на потоках это и правда бред.
Потоки нужны для параллельного выполнения кода. Если нужно кусок последовательного кода отключить, то применить простейшее условие, а не отпаралелить чтобы потом выключить. Тем более выключить ты не успеешь и с вероятностью 50/50 ещё один раз проскочит.
« Last Edit: March 30, 2016, 10:01:44 AM by Vint »


froze777

  • Освоившийся
  • **
  • Posts: 24
    • View Profile
Re: Поток, не могу решить проблему.
« Reply #2 on: March 31, 2016, 05:36:22 PM »
Vint, Спасибо, с твоей помощью получилось! ;)
а гетскринов много поскольку при выполнении поисков картинок бот каждый раз переходит на новые страницы сайта...

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: Поток, не могу решить проблему.
« Reply #3 on: March 31, 2016, 05:51:31 PM »
Так если картинка не находилась и никаких действий не происходило зачем перед поиском другой картинки заново гетскринить?


froze777

  • Освоившийся
  • **
  • Posts: 24
    • View Profile
Re: Поток, не могу решить проблему.
« Reply #4 on: March 31, 2016, 07:58:03 PM »
Минут 5 смотрел на твой ответ и на скрипт, и до меня дошло походу к чему ты клонишь)))
С твоих намеков я понял что гетскрин не так грузит проц если он выполнен после поиска:)