Re: Как правильно реализовывать IEnumXXX в OPC-сервере?
От: Vi2 Удмуртия http://www.adem.ru
Дата: 01.05.10 18:07
Оценка:
Здравствуйте, KVakaMarshal, Вы писали:

KVM>... проблема следующего плана. Пишу свой OPC DA2-сервер (без ATL). Клиентов ранее не писал и с COM'ом не работал. Но в целом все понятно, кроме одного — время жизни перечислителя на стороне OPC-клиента, т.е. когда он должен сделать Release.


Я ОРС-сервера не писал, но общий ответ на вопрос "когда OPC-клиент должен сделать Release" такой: клиент должен сделать Release объекту тогда, когда его этот объект больше не интересует. К этому можно добавить, что спецификация интерфейса IEnumXXX не накладывает специальных требований к времени жизни этого объекта. Но, по крайней мере, справедливо, что время его жизни не может превышать время жизни породившей его коллекции, хотя и тут енумератор — это самостоятельный объект.

KVM>Первый вариант дает преимущество в том, что все используемые в OPC-сервере перечислители можно реализовать одним-двумя шаблонными классами и не париться. А вот во втором случае практически каждый перечислитель надо реализовывать отдельно.


Вот и не парься, хотя можешь и попариться.
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! © КВН НГУ
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.