sendTransientFileAnalysis

sendTransientFileAnalysis();

The sendTransientFileAnalysis method of the Process class requests a target process (the method receiver) to send one or more notifications containing detailed analysis of its transient database file, including counts of objects by class number plus other useful information.

The target process can be any current process, including the requesting process itself or a process executing on another node.

The information received is the same as that returned by the analyzeTransientFileUsage method of the Process class, although that method can be used only for the current process instance.

The target process is activated temporarily or interrupted in order to analyze the transient database file and send the notifications, after which it resumes whatever it was doing.

The sendTransientFileAnalysis method is asynchronous; that is, it does not wait until the information is received. The information is received through notifications some time after the method is called.

The information in the notification relating to analysis of the transient database file for the target process is shown in the following table.

Parameter Contains …
eventType Process_TDB_Analysis_Event
target Process instance of the process that made the request
userInfo Detailed analysis of the transient database file for the process

Register to receive notifications of events of type Process_TDB_Analysis_Event (a global constant in the JadeProcessEvents category) on the process making the request using the beginNotification method defined in the Object class before executing the sendTransientFileAnalysis method, as shown in the following code fragment.

self.beginNotification(process, Process_TDB_Analysis_Event, 
                       Response_Continuous, 0);

To test whether a notification contains transient database file analysis, the userNotification method should test whether the value of the eventType parameter is Process_TDB_Analysis_Event.

If the size of the analyzed data collected is greater than the maximum allowed for a notification, the information is broken into parts and sent in a number of notifications.

Each delivered notification records positional information at the end of the string, in the format [<process oid>:<current notification>:<total number of notifications>] (for example, [187.5:1:3]).

If the target process (the method receiver) is not a valid current process, an 1128 exception (The target process is not valid) is raised.