From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Has somebody a PCI 1002 and have problems with multithreading like me?

Hi,
I am programming with LabWindows v5.5.
The daq board I am using is a PCI P1002 from icpdas.

I have been programming the board successfully until now (I have been programming in simple threading)
The problem seems to be relationated with Multithreading programming:
If the acquisition is performed in a different thread than the main one, it crashes.

I tried it at Windows NT and 98 (SE), and the behaviour is the same.


My debugger returns this error message:

FATAL RUN-TIME ERROR
"SGE.c", line 273, col 27, thread id 0x000000d7, function id 1
Dereference of out-of-bounds pointer: 8 bytes (2 elements) before start of
array.

I would like to know if there is any in
compatibility between this board and the multithreading, please.

Thanks in advance for your help.

silmarba
0 Kudos
Message 1 of 5
(3,068 Views)
You should check with the board manufacturer and see if their driver is multithread safe. I'm not familiar with the board, but it doesn't sound like the driver is written to be called from another thread. Also, FYI, all of National Instruments DAQ drivers are multithread safe.

Best Regards,

Chris Matthews
National Instruments
0 Kudos
Message 2 of 5
(3,066 Views)
Hi Chris,
thanks for your response.
I have contacted with the board manufacturer, and they don't know were the problem is... 😞
Instead of it, they send me the source code of his driver board which I can write modify to fit my requirements.
What I have to see in the code or what I must do to know if the code driver is multithread safe?

Best regards,
silmarba.
0 Kudos
Message 3 of 5
(3,066 Views)
Hi

I just bought the PCI-DAS 1002 DAQ card but did not receive the LabVIEW drivers with the board. Did you buy your lv drivers or did you manage to find it somewhere on the net?

Regards
Carl Kriger
0 Kudos
Message 4 of 5
(3,042 Views)
There's not really a simple way to determine if a driver is multithread safe. You normally have to examine the code to see if there's anything implemented to handle multiple accesses to it, protection of critical sections, etc. I would assume that the manufacturer or original author of the driver should be able to tell you if he implemented that, or if there is any documentation available on it.
Jeremy L.
National Instruments
0 Kudos
Message 5 of 5
(3,024 Views)