PDA

View Full Version : Task Manager A5 process not releasing


ABC123

Lynda Huddleston
03-23-2005, 08:48 AM
I have a system with 30+ users, and occassionally when one of them exits or gets booted for some reason, the actual "Process" doesn't exit. So even though it doesn't look like they have a A5 Runtime open on their windows screen, if you look at the task manager you can still see a process open. It also is obvious which ones they are because the "Ghost" process takes up more resources than a normal open session and it looks like it is "stuck in a loop" for a lack of better description. Every time this happens, and they open again (now with 2 processes open) indexing becomes unstable and we have to exit everyone and re-index, etc.

Has anyone experience this? Can you tell me why it doesn't release and if there is something that needs to be written in the exit feature...

THANKS!

Tom Cone Jr
03-23-2005, 11:06 AM
Can't help you with the "or gets booted for some reason". If that's the level of detail you're getting from the customer you may never get to the bottom of it. They need to give you complete details. If the problem turns out to be in your code, the solution is there, too.

I'm uncertain about the following, but it's the first thing I'd check if this problem can occur when the user exits normally. I'd personally check each script that opens a form as dialog. As explained in the docs only the calling script can close these processes. Closing the called dialog form itself does not stop the process from continuing to run. I'd verify that the scripts which open these forms in dialog mode actually include the necessary code to close them, too.

-- tom

CALocklin
03-24-2005, 05:02 PM
FWIW: I've seen this issue on my development machine occasionally but am not aware of it occurring on user machines. However, I'm very careful to check forms opened as dialogs (as recommended by Tom) and to make sure that any table opened in a script is also closed before the script ends. Although Alpha usually closes tables when scripts end, I've seem some situations where that didn't seem to work. I don't know why but it didn't so I simply don't take chances any more.

Hint: Instead of using a simple END statement, use END' with a single quote after "END". That way you can search for "END'" and you will only find real END statements rather than every END IF, END SELECT, and END WHILE as well as any words like 'send', 'render', 'endless', etc.

Cal Locklin
www.aimsdc.net

Lynda Huddleston
03-25-2005, 07:45 AM
I currently have the menu button on a form using a built in action “Open Form” with the specific form designated. Then on the form I have a close button that operates a script that does the following:
Select Action from the Form Menu : Save
Select Action from the Form Menu : Close
Is there a better way to do this?
My other question would be, what if they simply use the "X" in the top right corner to exit system from an open form - would this keep the form and process running?

CALocklin
03-26-2005, 10:20 AM
I don't see any problems in what you describe. As long as the form isn't being opened in "dialog" mode there shouldn't be any issues.

Tom Cone Jr
03-26-2005, 12:52 PM
My personal preference is to disable the system menus. I do not want my users to be able to exit the app except through "doors" I supply. So, I furnish a close button on each form that they have to push to close the form. This includes the main menu form which stays open throughout the application. The only way to shut down the app is to close the main menu with its button. You can't get back to the main menu to do this without closing all other forms first, since they're all maximized. I know this isn't a fancy or "interesting" as applications which permit multiple windows to be opened independently, but I figure as long as the data is protected to the nth degree the user will accept sacrifices in style points.

-- tom

Ken L Herrold
03-27-2005, 07:25 AM
Lynda:

I was some time after using form's opened as dialog that I discovered how to find one opened as dialog, invisible on the screen [as is their nature] but still open.

During development and the testing of these types of openings, I do many 'database compacts'.If you have a dialog form opened Alpha will throw an error message 'Can't compact [name]table, do you want to remove it?' When you see that, you know there's something wrong in your form-closing code.

Try it - you'll like it.

Ken

martinwcole
03-28-2005, 06:36 AM
to add to what others said:

make a log table, and when a user exits the application completely, write to the log the machine name and the time.

my bet is that its the users getting "booted" that are the culprit. And if they are getting booted, its an error in a script, of illogical combination of commands.