Перейти к содержанию
Fire Monkey от А до Я

GASCHE

Пользователи
  • Постов

    215
  • Зарегистрирован

  • Посещение

  • Победитель дней

    13

Весь контент GASCHE

  1. Да чтоб понять как вы задумали надо обращаться к Кашпировскому. Запускайте цикл while not Cancelled do begin Inc(I); end; в потоке думаю это решит вашу проблему.
  2. Если в 5 кучках по два яблока, то узнать общее количество можно сложением, а можно умножением ответ в том и в другом случае будет правильным. Вы запустите свой пример в Windows и посмотрите в диспетчере задач загрузку процессора сразу все станет ясно.
  3. Все зависит от того что вы понимаете под словом работает, а так да работает никто и не спорит.
  4. Так использовать такую конструкцию while not Finish do Application.ProcessMessages; и для Windows плохо
  5. А что мешает так изменить ваш пример procedure TForm1.Button1Click(Sender: TObject); begin i := 0; Finish := False; Memo1.Lines.Add('Start'); Button2.Enabled := True; Button1.Enabled := False; end; procedure TForm1.Button2Click(Sender: TObject); begin Inc(i); Memo1.Lines.Add(IntToStr(i)); if (i = 5) then begin Finish := True; Button2.Enabled := False; Ogogo(); end; end; procedure TForm1.Ogogo(); BEGIN //while not Finish do //Application.ProcessMessages; Memo1.Lines.Add('Finish'); Button1.Enabled := True; END;
  6. Зайдите в "Потоки и распределенные вычисления" там есть аналогичные темы.
  7. Спасибо! Еще спрошу если нужно загрузить не одну, а несколько картинок то как узнать, что первая загрузилась, или можно подряд вызывать LoadResizeBitmapFromURL меняя соответственно url и image?
  8. Тогда прошу уточнить нельзя работать с локальным TBitmap потока или с TBitmap из основного потока?
  9. Я понимаю с aBitmap, но aSourceBmp, aResizeBmp можно сделать локальными переменными потока. Зачем их синхронизировать?
  10. До сих пор думал, что метод Synchronize выполняется в главном потоке приложения, если это так, то почему ресайз не сделать в потоке?
  11. И работать будет коряво TImage не поток безопасный компонент поэтому присваивать ему значение в потоке без синхронизации нельзя.
  12. Мне жаль пользователя, которому придется работать с 50 кнопками если конечно это не клавиатура, но и не могу понять зачем его злить, дополнительно тормозя и без того долгий процесс вместо того чтоб пытаться сократить это время.
  13. А может проще сразу создать эти кнопки а при нажатии на кнопку сделать их видимыми?
  14. А Android поддерживает WaitForSingleObject( Parms.fvEventUSB, INFINITE ) или чем её можно заменить?
  15. Steepe_Hare Вы бы написали диапазон задержек и минимальную разницу между ближайшими.
  16. Если автор знает про него, наверно у него есть, а так есть тут.
  17. А если попробовать подключить jsMath?
  18. Ну не знаю, все зависит от времени сколько вы тратите на обработку одного запроса "дядя БИЛ" не рассчитывал на такое количество переключений между потоками в своей "многопоточной" системе даже получение интервала в 1мс с приемлемой погрешностью довольно проблематично.
  19. На мой взгляд тут два варианта, или как у вас сейчас реализовано с одним пулом или вместе с потоком создавать свой буфер и переносить туда данные из пула, с которыми и будет работать поток. Не понятно что тут не изящного, единственно если это возможно я бы и запись в бд сделал в отдельном спящем потоке и после занесения данных в очередь запускал бы этот поток.
  20. Не совсем понятно с размером пула, но что мешает потоку читать данные из пула и самому их обрабатывать и не понятно, что такое "очередь к БД" и как она связана с вашим пулом.
  21. Как-то не понятно что вы ловите, если в запросе нет SELECT ID... то что должно подставиться в where id=:id
  22. Браузер Chrome. Столкнулся на планшете, проверил на большом экране.На планшете в полно экранном режиме и при изменении размера экрана на большом дисплее пропадают верхние строки там где "Непрочитанный контент". Очень не удобно.
  23. В процедуре обработке читаете ( Sender as TButton ).Tag
  24. Используйте свойство Tag, при создании кнопки задайте его, при обработке прочитайте.
×
×
  • Создать...