• 0
OnePeople

TetheringManager

Вопрос

 

Отправляю список файлов по WiFi, программа стопориться до конца отправки, как этого избежать?(

if AResource.Hint='GetPlayList' then
   begin
      try
      for p := 0 to TetheringManager1.RemoteProfiles.Count-1 do
      TetheringAppProfile1.SendString(TetheringManager1.RemoteProfiles[p],'MusicClear','1');
      except
      end;

   for i := 0 to PlayList.Items.Count-1 do
      begin
        try
        for p := 0 to TetheringManager1.RemoteProfiles.Count-1 do
        TetheringAppProfile1.SendString(TetheringManager1.RemoteProfiles[p],'AddMusic',IntToStr(i)+'.'+PlayList.Items.Strings[i]);
        except

        end;
      end;


   end;

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

4 ответа на этот вопрос

  • 0

Попробуй реализовать отправку внутри нового потока

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Попробуй реализовать отправку внутри нового потока

Нет ну это само сабой, просто я думал может есть какой нибудь ключ, для отправки вне основного потока. Почему для таких компонентов сразу так не делать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

 

 Почему для таких компонентов сразу так не делать?

 

Потому что вам нужно асинхронное поведение. Его вы можете достаточно просто реализовать, используя другой поток.

Мне нужно синхронное, какое есть сейчас. Если компонент изначально будет асинхронен, то переделать его на синхронный режим работы гораздо сложнее, не?

 

Ну, а основная причина, я думаю, в том, что Tethering использует внутри себя Indy (если я ничего не путаю).

Изменено пользователем kami

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

 

 

Отправляю список файлов по WiFi, программа стопориться до конца отправки, как этого избежать?(

Вы используете два вложенных цикла с непредсказуемым временем выполнения - этим и замораживаете приложение. Попробуйте к примеру Application.ProcessMessages внутри циклов. И TetheringAppProfile1 отправляет в отдельном потоке, он здесь не при чём.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!


Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.


Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу