FB Variables

Two new minor ideas about FB variables:

1- The actually variable edit screen could have a filter for macro variables, non macro or all variables. I think the same could be used with environment and persistent, but to be honest I don't use those.

2- We actually have projects and user variables, I sugest having action list variables. I mean variables only avaliable (and also grouped) in one action list, 'cause after I have 'joined' my projects in just one with some action lists the project variables list growed so much, and it's not much readable. I know there is actually action list parameters, but if I use it (as I'm doing right now) when I am calling another action list all those parameters comes and I have to seek each one that is really a parameter. Another point is that the main action list doesn't support parameters (that's right) so I can't have those "variables only avaliable in this action list".

One really minor issue (I know, wrong forum ): In the action list parameters edit screen, as also in the include project action and the run action list action properties screen, when I have a scroll bar (lots of parameters) if I set one parameter value and click in the scrool bar this value is lost. The only way it works is: editing the value, selecting another field and after click/roll the scroll bar.

And one doubt: I have one async action group that just have three run action list action as children, all three calling the same action list. In the help file there is:

Reading and writing the same FinalBuilder variables (if running the same action list multiple times asynchronously, use Action List Parameters.)

So, just to be clear, the parameters I set in this action list can have three diferent values, and the action list can change them as it needs that won't broke any of the others threads, right?

And what about project variables that were set in the main action list and won't be written? Can't them just be readen from the multiple threads?

Best regards,

DM

Hi Daniel,

 

Thanks for the suggestions, we'll take them on board. I'll also look into the issue with the action list parameters dialog.

 

As to the setting variables issue, think of Action List Parameters as "method parameters", scoped to the particular instance of a running action list. Think of Project variables as "global variables", scoped to the entire running project.

If three different async threads call the same Action List, this is like three program threads calling a method with different parameters - each one is in a separate scope. On the other hand, if those three methods all access a shared global variable (ie a Project Variable), you have potential thread-safety problems.

 

Regards,

Angus

Posted By Angus Gratton on 08 Aug 2007 7:05 PM

As to the setting variables issue, think of Action List Parameters as "method parameters", scoped to the particular instance of a running action list. Think of Project variables as "global variables", scoped to the entire running project.

If three different async threads call the same Action List, this is like three program threads calling a method with different parameters - each one is in a separate scope. On the other hand, if those three methods all access a shared global variable (ie a Project Variable), you have potential thread-safety problems.



That's the point, I want to know if FB is thread-sefa to read this variable, I won't change its value, just read it. If not I'll have to pass lot's of values from the project to the action list (as also change it's name in each action).

Cheers,

DM

Ah, sorry. I misread your post. It’s perfectly safe to read values from inside Action Lists inside Async Action Group, if they’re not going to change during the life of the async group. If they are going to change, it’s still safe to read them - you just don’t know which value you’re going to get.

Nice to hear that.
Thanks Angus.

DM