PL/SQL에서 Java의 thread.join()과 동일한 기능을 찾고 있습니다. 나는. 나는 많은 일자리 (실)를 시작하고 끝내기를 기다린다.제출 된 작업이 Oracle PL/SQL에서 완료되기를 기다리고 있습니까?
PL/SQL에서 어떻게 가능합니까?
나는 dbms_job.submit을 사용하려고 생각하고있다 (나는 deprecated를 알고있다). dbms_scheduler도 대안입니다.
내 코드 :
DECLARE
jobno1 number;
jobno2 number;
BEGIN
dbms_job.submit(jobno1,'begin dbms_lock.sleep(10); dbms_output.put_line(''job 1 exit'');end;');
dbms_job.submit(jobno2,'begin dbms_lock.sleep(10); dbms_output.put_line(''job 2 exit'');end;');
dbms_job.run(jobno1);
dbms_job.run(jobno2);
//Need code to Wait for jobno1 to finish
//Need code to Wait for jobno2 to finish
END;
'DBMS_SCHEDULER' 대신에 여전히'DBMS_JOB'을 사용하고 있다면 똑같이 좋은 해결책입니다! –
+1, 멋진 아이디어 .. 2 가지 작업이 끝날 때까지 기다리는 방법에 대한 아이디어 (waitany 단계가 시작되기 전에 작업이 끝날 확률이있을 것이라고 언급 한 것처럼). 내가 생각할 수있는 한 가지 해결책은 두 가지 일자리 모두 동일한 사건을 던지고 두 번 잡아라 ... 대안을 제시하는 것입니다. – vicsz
WaitAny는 당신이 언급 한 것처럼 속임수를 씁니다. – vicsz