Size: a a a

2020 April 17

AS

Alexey Shumkin in Delphi & Lazarus
Serjone
У меня глупый вопрос. Есть идхттп. Он коннектится к серверу. Есть возможность отдать процесс подключения в отдельный поток, а потом вернуть уже подключенный компонент в основной поток?
чо ты хочешь сделать, расскажи?
источник

RS

Renat Suleymanov in Delphi & Lazarus
Serjone
У меня глупый вопрос. Есть идхттп. Он коннектится к серверу. Есть возможность отдать процесс подключения в отдельный поток, а потом вернуть уже подключенный компонент в основной поток?
Ну так асинхронный режим
источник

S

Serjone in Delphi & Lazarus
Alexey Shumkin
чо ты хочешь сделать, расскажи?
Вообще, в идеале я хочу запихать своих идхттп, 12 штук, в отдельные потоки и работать с ними оттуда. Только на изучение работы с потоками прям сейчас нет времени, надо разбираться с протоколом и к понедельнику отдать уже заказчику. Поэтому ищу способы "оптимизировать" то, что есть.
Раньше я подключался к каждому серверу по отдельности. Подключился, закачал файлы, подключился к следующему.
Китайцы делают иначе - они фигачат подключение сразу ко всем устройствам, которые находят в сети. И это работает. Но так как в сети устройств много, и они друг другу мешают (на двух квадратных метрах 12 вайфай устройств), то подключение и загрузка файлов идут с большими задержками. Частично это решено установкой таймаутов побольше, но тогда форма замораживается в первые минуты работы программы, изза того, что идхттп ждут таймаута. Бывает моментально подключается ко всем, бывает минуты две-три проходит и подключается к одному-двум. Видимо, зависит от того, угадал ли я с очередным подключением к устройству, которое именно в этот момент обслуживает антенна.
источник

S

Serjone in Delphi & Lazarus
Renat Suleymanov
Ну так асинхронный режим
Я пока таких умных слов не знаю, мне бы на понятном. Можно на матерном.
источник

S

Serjone in Delphi & Lazarus
В общем, мне пришла мысль, что если самую тормозящую часть отдать в отдельный поток, то тормоза можно исключить. Но я могу что-то не понимать в работе потоков (
источник

AS

Alexey Shumkin in Delphi & Lazarus
Serjone
В общем, мне пришла мысль, что если самую тормозящую часть отдать в отдельный поток, то тормоза можно исключить. Но я могу что-то не понимать в работе потоков (
мысль верная ))
отдать работу в поток, но "не изучать потоки" - сомнительно ))
источник

S

Serjone in Delphi & Lazarus
Alexey Shumkin
мысль верная ))
отдать работу в поток, но "не изучать потоки" - сомнительно ))
не изучать потоки прям сейчас - вроде разумно. Мне бы сейчас заставить работать систему клиента. Торможение на старте тут не первоочередная проблема.
источник

SB

Sergey Bodrov in Delphi & Lazarus
Кстати о потоках. Недавно узнал, что у TThread есть замечательный метод NameThreadForDebugging() - чтобы в списке потоков были нормальные имена, а не цифры.
источник

SB

Sergey Bodrov in Delphi & Lazarus
Еще есть ExecuteInThread(), легко и удобно запускать отдельные процедуры в фоне.
источник

SB

Sergey Bodrov in Delphi & Lazarus
В D7 такого нет.
источник

DB

Dmitry Belkevich in Delphi & Lazarus
а еще в более свежих средах есть всякие вкусности типа TTask и иже
источник

DB

Dmitry Belkevich in Delphi & Lazarus
источник

И

Илья in Delphi & Lazarus
Спасибо за ссылочку. Как раз обдумывал с какой стороны подступиться к выполнению нескольких, параллельных, задач выгрузки данных с SQL сервера.
источник

DB

Dmitry Belkevich in Delphi & Lazarus
👌
источник

VA

Viktor Akselrod in Delphi & Lazarus
@vildem привет
источник

РД

Роман Демченко in Delphi & Lazarus
Добрый день
источник

SB

Sergey Bodrov in Delphi & Lazarus
Роман Демченко
Добрый день
Какой оператор присваивания в Дельфи?
источник

РД

Роман Демченко in Delphi & Lazarus
:=
источник

АБ

Александр Бурмистров in Delphi & Lazarus
неправда. это оператор забирания
источник

АБ

Александр Бурмистров in Delphi & Lazarus
забрать значение у переменной справа
источник