If you are using the native CVI controls, the CVI runtime takes care of this for you. Unless specified otherwise, all the CVI libraries are multi-thread safe.
With typical Win32 UI controls (using ActiveX for example), you need to ensure that you don't access the UI component from a thread other than the one that created the UI component in the first place, unless ofcourse this is explicitly supported by the UI control. So if you are using ActiveX UI controls with a multihtreaded CVI application, you will need to be aware of this. CVI does provide an extensive multi-threading library that includes API for data protection ( as Wendy mentioned). This API allows you to easily create thread safe queues, thread safe variables and so on.
For information about Multithreading and CVI user interfacs, check out the CVI help under Contents >> Library Reference >> User Interface Library >> Multithreading. This is an excellant resource that will answer all your questions about creating multi threaded applications with user interfaces.
I hope this clears things.
Message Edited by bilalD on 04-20-2005 09:57 AM
Bilal Durrani
NI