Creating a complex function to make multi-tasking Simple

Firstly i would love to know if this has already been done cos it'd save a LOT of time and effort. Secondly you may be able to understand what i'm wanting if you've taken a look at the ComputerCraft mod for minecraft.

In the ComputerCraft mod you can create your own programs in the LUA language and there are a load of additional API's already in the mod to help such as movement controls for turtles (mobile PC's).

There is an API called "parallel" with only 2 functions ".waitForAll" and ".waitForAny". You can use these functions for the easiest method of multi-tasking you have ever seen, i.e. parallel.waitForAny(function1, function2, function3, etc)

This function will run all the argument functions simultaneously and ends as soon as any function completes...
The parallel.waitForAll(function1, function2, function3, etc) will run similar to the previous function but will continue running until all the argument functions have completed.



SOO... Does anybody know of any fancy windows APIs or if anyone's made this them selves i'd be greatful, if not then i'm looking for a few people that can help me work out how to make this for C++

Anyone interested?
This looks great, looks like exactly what i'm wanting however microsoft have a funny way of explaining things...
I understand some of it but if you understand it could you please reinterpret it for me? How would I call 2 or 3 simultanious functions (i.e. how do i call to this function to run 3 other functions for me)?

Thanks
C++1x has futures and promises, which provide exactly what you need.
http://www.justsoftwaresolutions.co.uk/threading/multithreading-in-c++0x-part-8-futures-and-promises.html

IMHO Microsoft API is terrible, non-portable and pain to use.
This looks great, it also looks fairly simple to use.. Cheers for the help!

EDIT: Whoah... This is a paid for library and very expensive, although this is exactly what i'm looking for isn't there other software that's similar but free?
Last edited on
*bump* Still not answered
It looks promising! :)
Now i just need to figure out how to use it! (I will mark as solved once i get it working)

Cheers guys!
Last edited on
IF you come across problems just post it up. We can help.
Topic archived. No new replies allowed.