LabWindows/CVI

Content Type
Programming Language
Current manual
Table of Contents

Network Variable Buffering

By default, the network variable server writes only the most recent value to all readers. When one client writes values to the server faster than another client reads them, newer values overwrite older, unprocessed values before the client can read them. If the reader does not process a value before receiving the following value, the data is lost. This loss of unprocessed data can occur on the server or on the client. This may not be a problem if you are reading data and you want to receive only the most recent value written to the server. However, if you want to receive every value written to the server, you must buffer the data.

Data loss on the server can occur when one or more writers write data faster than the server can transmit to readers, though this is not very common. To reduce the possibility of data loss on the server, you can enable server-side buffering for the variable, which is available only for variables explicitly created using the NI Distributed System Manager or using the Network Variable Configuration Functions and Process Functions.

Data loss on the client is more common and can occur when the client receives data faster than it can process. Data loss also can occur on the client when a writer writes data faster than the system can push to the server. To reduce the possibility of data loss on the client, you can use the Buffered Subscriber connection for reading and Buffered Writer connection for writing. Client-side buffering is supported for implicit and explicit variables. For readers, you can also use the Subscriber connection and implement your own client-side buffer.

Was this information helpful?

Log in to get a better experience