![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Здравствуйте
Есть несколько потоков со своими HTTP: TidHTTP Есть функция в отдельном модуле Код:
function HTTPGet (HTTP: TidHTTP; url: string): string; begin ... try Result: = http.Get (url); except on E: Exception do ... end; ... end; Безопасно ли выполнять эту функцию из потоков. Если нет, то почему? Последний раз редактировалось vanam, 11.01.2016 в 01:28. |
#2
|
||||
|
||||
![]() Да.
________________ — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#3
|
|||
|
|||
![]() Цитата:
модуль-поток Код:
unit unitHreadCategory; type THreadCategory = class(TThread) private HTTP:TIdHTTP; … uses lib4parse; … procedure THreadCategory.Execute; begin … HTTP:=HTTPCreate(); HTTPGet(HTTP,url); … end; модуль 2 Код:
unit lib4parse; … function HTTPGet (HTTP: TidHTTP; url: string): string; begin ... try Result: = http.Get (url); except on E: Exception do ... end; ... end; при одном потоке все прекрасно работает при нескольких потоках - потоки зависают на HTTPGet |