Async Action Group Question

Hi,

I think I've found a solution to what I want to do, but I want to make sure it's the best way to do it and that I'm not shooting myself in the foot.

I have a fbp I want to call multiple times asynchronously passing in a paramater I pop off a queue.  I added an Async group, under which I've placed 3 Iterate Queue actions.  Each of the 3 iterate actions sets a variable MyParam1, MyParam2, and MyParam3.  Underneath each iterate, I include my AsyncSub.fbp6 and pass a given MyParamX to it's InputParam.  As long as I check the Ignore Failure on each of the iterators, it seems to work fine.  So it runs DoStuff up to 3 times concurrently and if I want to increase this, I have to create a new MyParamX and copy paste the Iterator and change it to reference the new MyParamX.  There isn't any easier way than this is there?   And I'm not going to find this explodes 1 out of 100 times am I?

If my text isn't clear I've attached a sample of what I'm doing.

Thanks!

NPW_AsyncExample.zip (5.955 KB)

Hi Nelson

I had a look at the projects, and they seem to work as expected. Can you tell us what the actual real application of this is?

It looks to me like you are perhaps trying to speed up processing of a list by using multiple threads? The problem I see with this is that the threads having to serialize the writing the the file will introduce more overhead than running the processing in one thread? Using threads in FinalBuilder is not without penalty, we generally recommend 1 thread per cpu (or core these days), and mix I/O bound tasks with cpu bound.

HTH

Hi Vincent,

The actual problem I’m solving is not writing the same file, but deploying builds to multiple machines simultaneously. I did take note of the help file’s advice regarding I/O and CPU limited operations and threading.

Thanks!