Flash and C++ communication

Hello,

I’m mainly a C/C++ developer. I have a UI coded in flash (running inside a flash OCX fired up from C++) that is fed it’s data using the Setvariable() method of the flash object from C++. On the flash side it’s using the watch method to detect changes to the variable and process the data acordingly.
The C++ dialog receives it’s data from a different thread in turn, this may cause the thread that executes Setvariable() to execute this method faster than flash may process it. Under high message load, the flash movie freezes while the rest of the app (located in other threads) continues operating.
Is there a way to determine when flash finished processing a message contained in the setvariable method? Maybe using the watch method on flash side is not the best approach. I’m not much into flash but I read that flash provides means of handling events through event dispatchers. Would that allow for messages to be processed asynchrounously, thus eliminating the crashes?
I would very much appreciate any comments or help you might offer regarding this. Thanks,

Sabelo