The IDLAsyncJoin class observes one or more IDLAsyncJob objects to know when they are done. To use this, you pass an instance of this class into the constructor of the job object. This object will not own any of the jobs it observes, and it will not prevent them from being garbage collected.

Superclasses


Syntax


Result = IDLAsyncJoin()

Arguments


None

Keywords


None

Methods


Properties


None

IDLAsyncJoin::Join


The IDLAsyncJoin::Join method is an event handler invoked on this object when all the IDLAsyncJobs that this object is observing are done executing. This method will invoke the OnJoin callback on itself, which is to be overridden by subclasses to define the custom behavior. Do not override this method, override OnJoin.

Syntax


IDLAsyncJoin.Join

Arguments


None

Keywords


None

IDLAsyncJoin::OnJobDone


The IDLAsyncJoin::OnJobDone method is a callback invoked by any job observed by this object when it finishes its execution. If all of the observed jobs have completed execution, then the Join method is invoked on this object.

Syntax


IDLAsyncJoin.OnJobDone, Job

Arguments


Job

An IDLAsyncJob object that has completed execution and can be removed from the list of running jobs. If the job is unknown to this object, it will be ignored.

Keywords


None

IDLAsyncJoin::OnJoin


The IDLAsyncJoin::OnJoin method is an abstract interface declaration of the callback invoked on this job by the Join event handler. Subclasses must override this method instead of Join.

Syntax


IDLAsyncJoin.OnJoin

Arguments


None

Keywords


None

IDLAsyncJoin::WaitForJoin


The IDLAsyncJoin::WaitForJoin method is a blocking procedure that will go into an infinite loop until all the jobs being observed have completed execution.

Syntax


IDLAsyncJoin.WaitForJoin

Arguments


None

Keywords


None

Version History


8.7

Introduced

See Also


IDLAsyncJob