exponenta event banner

readasync

Асинхронное чтение данных из группы или элементов

Синтаксис

TransID = readasync(GObj)
TransID = readasync(IObj)

Описание

TransID = readasync(GObj) и TransID = readasync(IObj) асинхронное считывание данных для всех элементов, содержащихся в dagroup объект, GObj, или для вектора daitem объекты, указанные IObj. TransID - уникальный идентификатор транзакции для асинхронного запроса.

При асинхронном чтении данные всегда считываются с устройства, а не из кэша сервера. Active игнорируется для асинхронных чтений.

После завершения операции чтения сервер генерирует асинхронное событие чтения. Если файл функции обратного вызова указан для ReadAsyncFcn , эта функция выполняется при генерации события.

Можно отменить выполняющийся асинхронный запрос с помощью cancelasync.

Когда readasync операция выполнена успешно, Value, Quality, и TimeStamp свойства связанных элементов обновляются для отражения значений, полученных в результате операции считывания.

Примеры

Настройте клиент, группу и элемент для сервера моделирования Matrikon™:

da = opcda('localhost','Matrikon.OPC.Simulation');
connect(da);
grp = addgroup(da,'ExReadAsync');
grp.UpdateRate = 20;
itm = additem(grp,'Random.Real8');

Выполните две операции асинхронного чтения:

tid1 = readasync(grp)
tid2 = readasync(grp)

Проверьте журнал событий:

pause(2)
disp('Event log:')
showopcevents(da)

См. также

| | | |

Представлен до R2006a