На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
[!] Как относитесь к модерированию на этом форуме? Выскажите свое мнение здесь
  
> Утечка памяти , При снятии данные с векторного рефлектометра серии CABAN утекает память.
    Работаю с векторныь рефлектометром CABAN


    В доках пример на VC (СОМ интерфейс)
    Если убрать лишнее получится
    #import "C:\RVNA\RVNA.exe" no_namespace
    IRVNAPtr pNWA; // Pointer to COM object of RVNA.exe
    CComVariant Data; // Variable for measurement data

    CoInitialize(NULL);
    pNWA.CreateInstance(__uuidof(RVNA))

    pNWA->SCPI->TRIGger->SEQuence->SINGle();
    Data = pNWA->SCPI->CALCulate[1]->SELected->DATA->FDATa;
    CComSafeArray<double> mSafeArray;
    mSafeArray.Attach(Data.parray);
    ........................................
    mSafeArray.Detach();
    pNWA.Release();
    CoUninitialize();

    Пишу на BCB6

    #include "R54Lib_TLB.h" // вместо #import "C:\RVNA\RVNA.exe"

    VARIANT Data;
    IRVNAPtr pNWA;
    pNWA = CoRVNA::Create();
    pNWA->SCPI->TRIGger->SEQuence->SINGle();

    Data = pNWA->SCPI->get_CALCulate(1)->SELected->DATA->get_FDATa();

    TSafeArrayT <double,VT_R8,1> mSafeArray;
    mSafeArray.Attach(Data.parray);
    ........................................
    mSafeArray.Detach();
    Снятие данных постоянно в цикле. Через полчаса прога вылетает с сообщением о нехватке памяти.
    Утечка видимо происходит на на строчке выделенной болдом
    С COM работаю впервые, поэтому не сильно разбираюсь.
    Прошу помощи.
    Сообщение отредактировано: Qraizer -
      Первое, что приходит в голову, и трудно предложить что-либо ещё взамен – пройти отладчиком итерацию цикла и выяснить, действительно ли деструкторы авто-объектов освобождают COM-объекты, сводя счётчики их ссылок к нулю. Не исключено, что где-то закралась неточность в подсчёте ссылок.
      0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
      0 пользователей:


      Рейтинг@Mail.ru
      [ Script execution time: 0,0157 ]   [ 16 queries used ]   [ Generated: 28.03.24, 13:20 GMT ]