Since you know that the loop reads 1 second of data, then it should not wait (or gets delayed may be because of data processing)for more than 1 second. It is probably getting delayed more than that.
To increase the buffer size, use the vi
DAQmx Configure Input Buffer.vi
This a note from ni help
"How Is Buffer Size Determined?
Input Tasks
If your acquisition is finite (sample mode on the Timing function/VI set to Finite Samples), NI-DAQmx allocates a buffer equal in size to the value of the samples per channel attribute/property. For example, if you specify samples per channel of 1,000 samples and your application uses two channels, the buffer size would be 2,000 samples. Thus, the buffer is exactly big enough to hold all the samples you want to acquire.
If the acquisition is continuous (sample mode on the Timing function/VI set to Continuous Samples), NI-DAQmx allocates a buffer equal in size to the value of the samples per channel attribute/property, unless that value is less than the value listed in the following table. If the value of the samples per channel attribute/property is less than the value in the table, NI-DAQmx uses the value in the table.
Sample Rate Buffer Size
no rate specified 10 kS
0�100 S/s 1 kS
100�10,000 S/s 10 kS
10,000�1,000,000 S/s 100 kS
1,000,000 S/s 1 MS
You can override the default buffer size by calling the Input Buffer Config function/VI.
Note Using very large buffers may result in diminished system performance due to excessive reading and writing between memory and the hard disk. Reducing the size of the buffer or adding more memory to the system may reduce the severity of these problems. "
If you have a wait function, (wait ms should be fine), then it has to be set less t
han 1000 ms.