主要软件: 主要软件版本: 6.0 主要软件修正版本: N/A 次要软件: N/A
|
问题: 我需要在一个线程中将数据写入文件中,同时在另一个线程中读取这个文件中的数据,这样做可以吗?
解答:
使用CVI的标准ReadFile和WriteFile函数,可以很容易地实现需求。下面在一个单线程中的例子:
char buffer2[100]; char* buffer1 = "here is my string"; int fh1, fh2;
fh1 = OpenFile ("test.txt", VAL_WRITE_ONLY, VAL_OPEN_AS_IS, VAL_ASCII);
WriteFile (fh1, buffer1, strlen(buffer1));
fh2 = OpenFile ("test.txt", VAL_READ_ONLY, VAL_OPEN_AS_IS, VAL_ASCII);
ReadFile (fh2, buffer2, 100);
CloseFile (fh1); CloseFile (fh2);
你也可以使用这些函数从单独的线程中读写文件,不需要任何额外的编程代码。
http://digital.ni.com/public.nsf/allkb/AF5DB6716A024E7986257E60000AA9E4