Без cmem та же проблема, смотрел на флажок NeedLock менеджера памяти - выставлен в False. Флажок менял, менеджер памяти на свой с критическими секциями заменял, но всё бестолку рандомно проскакивает ошибка:
malloc: *** error for object 0x1: Non-aligned pointer being freed
*** set a breakpoint in ...
Найдено 44 результата
- 01.12.2010 11:42:12
- Форум: Free Pascal Compiler
- Тема: FPC многопоточность и память
- Ответы: 3
- Просмотры: 3406
- 24.11.2010 17:12:28
- Форум: Free Pascal Compiler
- Тема: FPC многопоточность и память
- Ответы: 3
- Просмотры: 3406
Re: FPC многопоточность и память
Стало полегче, но периодически всё равно проскакивают падения с ошибками.
Программа может одновременно работать с десятками потоков каждый из которых выделяет и высвобождает память.
Программа может одновременно работать с десятками потоков каждый из которых выделяет и высвобождает память.
- 20.11.2010 05:25:19
- Форум: Free Pascal Compiler
- Тема: FPC многопоточность и память
- Ответы: 3
- Просмотры: 3406
FPC многопоточность и память
Потоки создаются при помощи BeginThread, в uses основного dpr модуля объявлены {$IFDEF DARWIN}cthreads, cmem, heaptrc,{/$ENDIF}
Проблема в том, что созданный поток использует и высвобождает память выделенную в основном потоке. В Windows всё работает как часы, в MacOS падает. Какие тонкости менеджера ...
Проблема в том, что созданный поток использует и высвобождает память выделенную в основном потоке. В Windows всё работает как часы, в MacOS падает. Какие тонкости менеджера ...
- 12.05.2010 11:17:13
- Форум: Графика
- Тема: Создание игровых приложений на Lazarus + OpenGL ...
- Ответы: 12
- Просмотры: 62057
- 17.04.2010 16:20:50
- Форум: Free Pascal Compiler
- Тема: MacOS и размер исполняемого файла
- Ответы: 2
- Просмотры: 2873
Re: MacOS и размер исполняемого файла
Какая жаль. Спасибо за инфу, буду копать в этом направлении )
- 17.04.2010 13:37:52
- Форум: Free Pascal Compiler
- Тема: MacOS и размер исполняемого файла
- Ответы: 2
- Просмотры: 2873
MacOS и размер исполняемого файла
program test;
begin
Writeln('Hello World!');
end.
FPC 2.4.0
Компилирую с флагами: -Mobjfpc -Sd -O3 -CX -XX
Получаю 91кб исполняемый с кучей мне абсолютно не нужного хлама вида:
..._SYSTEM_INDEXBYTE$formal$LONGINT$BYTE$$LONGINT _SYSTEM_INDEXWORD$formal$LONGINT$WORD$$LONGINT... а также кучей ...
begin
Writeln('Hello World!');
end.
FPC 2.4.0
Компилирую с флагами: -Mobjfpc -Sd -O3 -CX -XX
Получаю 91кб исполняемый с кучей мне абсолютно не нужного хлама вида:
..._SYSTEM_INDEXBYTE$formal$LONGINT$BYTE$$LONGINT _SYSTEM_INDEXWORD$formal$LONGINT$WORD$$LONGINT... а также кучей ...
- 01.10.2009 23:08:13
- Форум: Free Pascal Compiler
- Тема: Перекрёстные ссылки на object
- Ответы: 13
- Просмотры: 8967
Re: Перекрёстные ссылки на object
carrots, не вписываются в общую эстетику кода )
- 01.10.2009 23:00:50
- Форум: Free Pascal Compiler
- Тема: Перекрёстные ссылки на object
- Ответы: 13
- Просмотры: 8967
Re: Перекрёстные ссылки на object
carrots, говорю же, не нужны мне классы, оно сейчас на них и реализовано )
- 01.10.2009 22:16:32
- Форум: Free Pascal Compiler
- Тема: Перекрёстные ссылки на object
- Ответы: 13
- Просмотры: 8967
Re: Перекрёстные ссылки на object
debi12345, ну тут даже не в миниатюрности дело, просто всюду используются чистые объекты и TXML выбивался бы из общего стиля )
Но XML парсер весьма легковесный получился, и не хотелось бы вместо XML['mode']['mesh'].Content городить нечто вроде XML['model']^['mesh']^.Content )
Но XML парсер весьма легковесный получился, и не хотелось бы вместо XML['mode']['mesh'].Content городить нечто вроде XML['model']^['mesh']^.Content )
- 01.10.2009 21:14:08
- Форум: Free Pascal Compiler
- Тема: Перекрёстные ссылки на object
- Ответы: 13
- Просмотры: 8967
Re: Перекрёстные ссылки на object
Как раз, хочется именно чистых объектов без рюшек классовых )
- 01.10.2009 20:44:52
- Форум: Free Pascal Compiler
- Тема: Перекрёстные ссылки на object
- Ответы: 13
- Просмотры: 8967
Re: Перекрёстные ссылки на object
Звиняйте что ввёл в заблуждение, но я наткнулся на неприятную особенность:
TXML = object
private // или public, не важно
XML : array of TXML;
end; Если убрать private, то всё успешно компилируется, в противном случае - "Type 'TXML' is not yet completely defined". Это только в Delphi, в FPC по ...
TXML = object
private // или public, не важно
XML : array of TXML;
end; Если убрать private, то всё успешно компилируется, в противном случае - "Type 'TXML' is not yet completely defined". Это только в Delphi, в FPC по ...
- 01.10.2009 19:46:24
- Форум: Free Pascal Compiler
- Тема: Перекрёстные ссылки на object
- Ответы: 13
- Просмотры: 8967
Re: Перекрёстные ссылки на object
Оно не скомпилируется. FPC и Delphi этого не допускает. Но в Delphi есть record с методами, с которым это прокатит, хочется аналог в FPC найти.
- 30.09.2009 09:32:19
- Форум: Free Pascal Compiler
- Тема: Перекрёстные ссылки на object
- Ответы: 13
- Просмотры: 8967
Перекрёстные ссылки на object
Имеется желание сделать вот так:
Очень хотелось бы реализовать это без классов и побочных PXML, которые в objfpc режиме требуют обязательного указания ^ :)
Delphi позволяет творить подобное с record структурами.
Решаема ли задача при таких условиях? )
Код: Выделить всё
TXML = object
Node : TXML;
end;Delphi позволяет творить подобное с record структурами.
Решаема ли задача при таких условиях? )
- 17.07.2009 18:39:18
- Форум: Free Pascal Compiler
- Тема: Индексы методов интерфейса
- Ответы: 3
- Просмотры: 3161
Re: Индексы методов интерфейса
Дык, не хотелось бы при этом где-то в коде вызывать что-то типа TMyProcedure(IMyInt.VMTable[idx]) :)
- 17.07.2009 03:36:07
- Форум: Free Pascal Compiler
- Тема: Индексы методов интерфейса
- Ответы: 3
- Просмотры: 3161
Индексы методов интерфейса
Возможно ли каким-нибудь хаком задать индекс метода интерфейса по типу того что делает dispid?
Сама задача: имеется описание интерфейса с доброй сотней методов, а нужна лишь пара из них, и совсем не хочется тянуть за собой описание всего интерфейса :)
Сама задача: имеется описание интерфейса с доброй сотней методов, а нужна лишь пара из них, и совсем не хочется тянуть за собой описание всего интерфейса :)
