[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 146
  • Last Modified:

Handling Message

My question is next.
I have a procedure in which I create proces. This proces call oracle loader program which loads data in the oracle database. So this can take a lot of time. But when I create a proces I don't won't to wait until this process isn't over.
When I chose another table to fill with data I again call this process with different parameters. And so it can be many times. So several process running at the same time.
And now a question.

How can I determine which process is finished and when, because I need a time. This time is needed to update to oracle database.
0
p_uros
Asked:
p_uros
1 Solution
 
ssiteCommented:
If you don't need the exact milisecond, here's what I would do :

Whenever you use createprocess, the final parameter is the process information :

use proc.hProcess and you know the process id of the process you ran.

Store all these in an array or list and then use a timer to check every second or two, which process ID's are still alive. You use GetExitCodeProcess(processarray[index], @Exitcode)

if ExitCode is not STILL_ACTIVE, the process finished in the time between the last check and now. Don't forget a flag to prevent you from doing the timer event twice at the same time.

Hope this helps.


0

Featured Post

Prep for the ITIL® Foundation Certification Exam

December’s Course of the Month is now available! Enroll to learn ITIL® Foundation best practices for delivering IT services effectively and efficiently.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now