Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;

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

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


 
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]

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


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

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


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

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


 
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;

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


 
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;

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


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

try
SP:=TORaStoredProc.Create;

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


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

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


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

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



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

Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.434 c
14-1082043315
VMcL
2004-04-15 19:35
2004.05.09
Внимание, внимание!


6-1079600219
Ozone
2004-03-18 11:56
2004.05.09
CreateIpForwardEntry


14-1082378849
zamkom
2004-04-19 16:47
2004.05.09
Не могу найти.


3-1081433101
ShaG
2004-04-08 18:05
2004.05.09
Excel в DataSet


8-1075903834
Urvin
2004-02-04 17:10
2004.05.09
КОЛИЧЕСТВО Цветов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский