Thread-safe version of VISA XOP

The VISA XOP ships with Igor and is used for data acquisition.

I have created a thread-safe version of VISA XOP:

http://www.wavemetrics.net/Downloads/Customers/VISA-XOP-120-Macintosh.z…
http://www.wavemetrics.net/Downloads/Customers/VISA-XOP-120-Windows.zip

​I have no way to test this. If you use it, please let me know how it goes.

If you are using VISA XOP but don't have interest or time to use multi-threading, it would still be helpful if you could replace your VISA XOPs with the ones linked above and let me know how it goes.

Thanks.
Thanks for this new development!
I have made a quick test (Igor 6.3.6.4, Win7, LAN communication with the instrument).
It seems to work fine, meaning that I had no problem with my procedures that use the following VISA XOP operations:
visacontrol
visaread
visawrite
visareadbinary
visareadbinarywave

I do not know when/if I will test the threadsafe behaviour in the near future.
If you think about a simple test that would be helpful to validate the thread-safe behaviour, let me know, I could probably give it a try.
Quote:
I have made a quick test

Thanks. That gives me some confidence that I did not break something while adding thread safety.

Quote:
If you think about a simple test that would be helpful to validate the thread-safe behaviour, let me know

Thanks for the offer. I think another Igor user is working on something that will test thread-safety.

Hello, 

I tested today the thread safe version of the Visa XOP.

It works, but I had to move from VISAopen and VISAread to ViOpen and Viread in order to prevent a "bug on watch not working in threadsafe".

This threadsafe is really a nice way to go around slow communication with a series of instruments that I have to interrogate from time to time, while keeping a high efficiency on my main acquisition loop.

 

Thanks for devloping the tool !

 

roland 

Quote:
It works, but I had to move from VISAopen and VISAread to ViOpen and Viread in order to prevent a "bug on watch not working in threadsafe".

That does not ring a bell. If you provide details (a simplified example would be great), I will investigate.