Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Нужно запустить ХП в отдельном потоке   Найти похожие ветки 

 
alextov   (2004-04-22 14:10) [0]

ХП долго выполняется, хочу чтоб Хранимая Процедура отработала в отдельном потоке и не мешала юзеру.
Соответственно пишу в юните потока:

procedure TMyThread.Execute;
var SP: TORaStoredProc;
begin
 freeOnTerminate:=true;
 SP:=ORaStoredProc.Create;
 SP.StoredProcName:="MY_PROC";  
 SP.Prepare;
 SP.Execute;
end;

В главном юните:
procedure TForm1.Button1Click(sender:Tobject);
var thrd: TMyThread;
begin
 thrd:=TMyThread.Create(false);
end;

Поток запускается, ХП запускается, но приложение не реагирует ни на что, пока не завершится выполнение ХП.

Подскажите,плз, где я неправ ...


 
Reindeer Moss Eater ©   (2004-04-22 14:12) [1]

Наверное ты не весь код нам показал. Тот что в главном юните


 
alextov   (2004-04-22 14:40) [2]

Действительно, код несколько сложнее, я выбросил из него немного второстепенных деталей потому, что писал по памяти.
Я попробовал откомпилировать приведенный здесь код - и что самое интересное - он работает !!!
Значит проблемы в деталях, но к сожалению исходников под рукой сейчас нет, так что предлагаю вернуться к этому вопросу завтра, когда я помещу здесь оригинальный глючный код :))


 
Digitman ©   (2004-04-22 14:57) [3]

procedure TMyThread.Execute;
var
SP: TORaStoredProc;
begin
freeOnTerminate:=true;
try
 SP:=ORaStoredProc.Create;
 try
  SP.StoredProcName:="MY_PROC";  
  SP.Prepare;    
  SP.Execute;
 finally
  SP.Free;
 end;

except
end;

end;

хотя это и не принципиально в плане проблемы, но рано или поздно "грабли выстрелят"


 
Reindeer Moss Eater ©   (2004-04-22 15:03) [4]

try
SP:=TORaStoredProc.Create;

Да этот код вообще в блокноте писался


 
Курдль ©   (2004-04-22 15:22) [5]

А Вам нужно ожидать каких-то возвращаемых значений от ХП, или просто запустить процесс на серваке?
Тогда авось поможет TOracleQyery у которого в SQL.Text прописан вызов ХП...



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.03 c
1-1079955112
stud
2004-03-22 14:31
2004.04.11
в чем может быть ошибка??


1-1080114882
1111111111
2004-03-24 10:54
2004.04.11
TRichEdit с возможностью вставки рисунков


9-1069917335
Агент Смит [8]
2003-11-27 10:15
2004.04.11
Ломаная линия OpenGL


14-1079078452
reticon
2004-03-12 11:00
2004.04.11
подключение видеокамеры через USB


7-1075198334
Shurik_212
2004-01-27 13:12
2004.04.11
Кто положил файл?