MemHandleNew() в PalmOS не может выделить большой блок
От: WhiningHal Россия  
Дата: 06.10.04 14:48
Оценка:
Здравствуйте.

Столкнулся с такой проблемой:
Надо в текстовом поле отобразить большой (около 180Кбайт) текст, а если памяти не хватает, то хотя бы его кусок.
Я поступаю так: сначала запрашиваю размер максимального блока памяти с помощью функции MemHeapFreeBytes(), потом вычитаю из этого размера (на вский случай из этого, а не из общего объёма свободной памяти) 64К на другие нужды, потом отвожу память.
Но память не отводится, хоть её и много!
Tungsten T3, Palm OS 5.2.1, сообщает, что у него свободно 325Кбайт непрерывного пространства ОЗУ (имеется в виду Dynamic heap, а не вся память), но при попытке выделения блока 180Кбайт обламывается, возвращая NULL. Так же ведут себя и эмуляторы.

Собственно вопросы:
1. В чём я ошибаюсь?
2. Как получить большой блок памяти для текста, чтобы потом передать его функции fldSetTextHandle() ?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.