Flow variables provide a means of passing information throughout a flow instance without requiring that the information to be passed through data links. flow variables are name-value pairs that persist, unless deleted.
Flow variables can be specified at different locations.
Flow Variables can be specified as query parameters of the Runtime REST API invocation of flows.
Flow variables can be defined and manipulated through flow library, flowlib functions.
Some node types allow you to set flow variables using the Design Server UI settings dialog, in the Flow Designer canvas.
Under Flow Engine context, all flow variables (both custom and special) defined for the flow instance, go out of scope when the flow instance completes execution. It does not affect the flow variables of the other instance.
A 'thread local flow variable' is a special variable, in that each thread running under a flow instance gets a copy of the flow variable when referenced. Each thread then works on its own copy during flow execution. Any action (get, set, delete, increment, decrement, resolve), on the thread local flow variable, is performed on the copy of the flow variable associated with that thread.