|
213 / 139 / 8
Регистрация: 18.08.2010
Сообщений: 1,018
|
|||||||
Создать ссылку на делегат, чтобы Garbage Collector его не уничтожал09.04.2012, 21:58. Показов 2794. Ответов 8
Использую неуправляемый и управляемый код. И вот через некоторое время дебаггинга програма прерывается с ошибкой в студии:
Как этот WinEventDelegate присобачить...
0
|
|||||||
| 09.04.2012, 21:58 | |
|
Ответы с готовыми решениями:
8
Как сделать, чтобы garbage collector быстрее проходил?
CLR и Garbage Collector |
|
Неадекват
1501 / 1237 / 248
Регистрация: 02.04.2010
Сообщений: 2,807
|
|
| 10.04.2012, 00:45 | |
|
А объявить делегат в неуправляемом коде религия не позволяет? Все что находиться в блоке unsafe сборщик мусора не трогает.
Ну или можно GC.KeepAlive(объект на который нужна ссылка) юзать.
0
|
|
|
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
|
|||
| 10.04.2012, 01:05 | |||
|
Tolias28, создайте ссылку на делегат в теле класса или используйте структуру GCHandle - она специально для этого создана. Правда, ее тоже надо будет в теле класса создать для последующего освобождения.
0
|
|||
|
Неадекват
1501 / 1237 / 248
Регистрация: 02.04.2010
Сообщений: 2,807
|
|
| 10.04.2012, 13:55 | |
|
Мда, нехорошо получилось, действительно собирает и в небезопасном коде. В голове кавардак
0
|
|
|
213 / 139 / 8
Регистрация: 18.08.2010
Сообщений: 1,018
|
||
| 10.04.2012, 15:28 [ТС] | ||
Я не знаю как именно ее создать И был бы очень благодарен увидеть код, как именно это делается, если можно...)
0
|
||
|
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
|
||||||
| 10.04.2012, 15:31 | ||||||
1
|
||||||
|
213 / 139 / 8
Регистрация: 18.08.2010
Сообщений: 1,018
|
||||||
| 10.04.2012, 17:22 [ТС] | ||||||
|
kolorotur, спасибо! Но... я внес указанные вами изменения и по прежнему через некоторое время появляется тоже самое сообщение CallbackOnCollectedDelegate was detected
![]() Вот измененный код
0
|
||||||
|
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
|
||||||
| 10.04.2012, 17:29 | ||||||
|
Тьфу ты елки-палки, это я в примере накосячил - не тот делегат прицепил
![]() Надо было так сделать:
1
|
||||||
|
213 / 139 / 8
Регистрация: 18.08.2010
Сообщений: 1,018
|
||||||
| 10.04.2012, 17:38 [ТС] | ||||||
|
я даже понял, почему проблема не исчезла... Потому что проблемный объект, из-за которого возникает это сообщение, это не FormClosingEventHandler, для которого вы использовали GCHandle... Проблема возникает из-за уничтоженного делегата WinEventDelegate... Я пробовал делать вот так:
((Добавлено через 1 минуту о, вы уже ответили Спасибо, сейчас попробуюДобавлено через 5 минут kolorotur, огромное спасибо за помощь! Все работает!)
0
|
||||||
| 10.04.2012, 17:38 | |
|
Помогаю со студенческими работами здесь
9
Режимы Garbage Collector Посмотреть какой Garbage Collector выбран по умолчанию
Кто может кратко объясните как работает Garbage Collector?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|