Feedback on NI Community

cancel
Showing results for 
Search instead for 
Did you mean: 

Does the ODBC in the SQL toolkit require support for multithreading?

The complete sql session VI in the LabView SQL toolkit runs fine when run once. Trying to run the VI a second time results in an illegal operation error, and Labview must be shut down and restarted. Attempts to construct a VI with lower level functions (connect, execute, disconnect) result in the same error. The vendor ATI, of the ODBC driver OpenRDA, said that the version of the driver we are using does not support multithreading. I was wondering if this may be the problem. That is, does LabView require support for multithreading?
0 Kudos
Message 1 of 2
(4,869 Views)
Hello,

I found a document (internatl to NI) that states that the toolkit VIs contain non-thread safe CINs. It suggests that for best performance, you should assign the top level VI to the user interface thread to minimize thread switches. To do this, go to your top-level VI and right-click on the VI icon in the upper-right and choose "VI Properties" (or VI Setup in LabVIEW 5.x). Go to the "Execution" properties and change the Execution System to "User Interface" to see if this helps.

As you are probably aware, most all ODBC drivers are multi-threaded (or at least multi-thread safe), so you might possibly be simply running into a limitation of single-threaded ODBC drivers.

I hope this suggestions helps, and good luck!

Sincerely,

Darren Nattinger
Applications Engineer
N
ational Instruments
0 Kudos
Message 2 of 2
(4,869 Views)