Jump to content

Recommended Posts

Posted (edited)

Is there an easy way I could create and control separate processes from a single autoit executable?

I need:

A Controller process, which would schedule the events and pass them to the Queue process

A Queue process which would execute functions in order, then remove each as it finished

Multiple Timer processes - each of these would receive a single notification with the function to be called and the time to wait before sending to the controller to relay to the Queue. By relaying the events, I avoid simultaneous access issues with the Queue.

A GUI process, which would display, send and receive information from the Controller process.

My problem is relatively simple: I need to handle multiple timing events within a dynamic script, where functions have to be executed as fast as possible, but where timing is also an issue, I can't afford to let the program hang while I do a sleep(6). I also want to avoid the overhead of some sort of timelog monitoring system, which would add at least 3 function calls for every one I'm planning on now. I also don't want the GUI to hang during pauses.

I've been playing with this, but it doesn't work on compiled scripts, it seems.

Edited by Jrowe
Posted

Or, heh, I was misinterpreting what _ProcSuspend was doing. Didn't realize it just froze the process, to show the other one just continued as normal.

Seem it's exactly what I'm looking for. Now I get to figure out how to spawn and destroy processes dynamically. So much fun I can hardly bear it.

Sorry if it seems I'm answering my own questions today, its just that it's easier for me to search after I've read my question a few times, for some reason.

A Little scatterbrained today, I guess.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...