![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Уважаемые, спецы и копипастеры, помогите решить проблему.
Проблема: даю запрос на получение данных с сервера и обрабатываю полученный ответ формата JSON Код:
PostVK:=TStringList.Create; logVK:=IdHTTP1.Post('http://'+server+'?act=a_check&key='+key+'&ts='+ts+'&wait=25',postvk); js := TlkJSONobject.Create; js := TlkJSON.ParseText(logvk) as TlkJSONobject; ts:=IntToStr(js.getInt('ts')); jl:=js.Field['updates'] as TlkJSONlist; В тот момент когда происходит этот ряд операторов, программа подвисает, что именно и мешает мне реализовать задумку. В чем суть программы? Программа предназначена для обмена мгновенными сообщениями соц сети Вконтакте. Поэтому при проверке апдейтов (пользователь онлайн, оффлайн и тд) категорично нельзя чтобы программа подвисала. Решение: ? ![]() |
#2
|
||||
|
||||
![]() Цитата:
Пишу программы за еду. __________________ |
#3
|
|||
|
|||
![]() Поподробнее можно? Почитал я про этот класс и что?
Не мог бы подсказать как да что там. Что мне в программу вбить? Последний раз редактировалось Кодер, 17.04.2011 в 13:56. |
#4
|
||||
|
||||
![]() вот поподробнее:
Код:
type TStatusThread = class(TThread) protected procedure Execute; override; public constructor Create; end; { TStatusThread } constructor TStatusThread.Create; begin inherited Create(True); FreeOnTerminate:=True; Resume; end; procedure TStatusThread.Execute; begin // получаем пользователь онлайн, оффлайн и тд end; begin TStatusThread.Create; end; Пишу программы за еду. __________________ |
#5
|
|||
|
|||
![]() А если попробывать так?
Код:
type TMyThread = class(TThread) private { Private declarations } protected procedure DoWork; procedure Execute; override; end; implementation procedure TMyThread.Execute; begin while not Terminated do Synchronize(DoWork); end; procedure TMyThread.DoWork; begin //Получаем данные end; |
#6
|
||||
|
||||
![]() Цитата:
Пишу программы за еду. __________________ |
#7
|
|||
|
|||
![]() Цитата:
написал в асю тебе, авторизуй |
#8
|
|||
|
|||
![]() разобрался, спасибо!
![]() |
#9
|
|||
|
|||
![]() А как сообразить, чтобы указанные процедуры выполнялись каждые 25 секунд?
|
#10
|
||||
|
||||
![]() обработчик таймера:
Код:
TStatusThread.Create; Пишу программы за еду. __________________ |