Показать сообщение отдельно
  #6  
Старый 21.10.2013, 16:23
Sibay Sibay вне форума
Прохожий
 
Регистрация: 21.10.2013
Сообщения: 5
Версия Delphi: Delphi XE5
Репутация: 10
По умолчанию

Так вызывать нельзя - метод должен быть описан внутри класса потока. Вызывай свой CheckRequest в MyThread.Execute; В твоем случае отсутствие синхронизации не приведет к сбою. Естественно CheckRequest должен быть описан в классе TMyThread.
Установи свойство MyThread.FreeOnTerminate в true. Флаг использовать не обязательно, достаточно проверить является ли MyThread nil. Если поток выполняется, то отвечай клиенту, что "занято", если поток nil, то создавай поток и запускай его (Resume).

Рекомендую почитать про потоки и методы синхронизации подробнее.
Ответить с цитированием