Найдено 44 результата

XProger
01.12.2010 11:42:12
Форум: Free Pascal Compiler
Тема: FPC многопоточность и память
Ответы: 3
Просмотры: 3406

Re: FPC многопоточность и память

Без cmem та же проблема, смотрел на флажок NeedLock менеджера памяти - выставлен в False. Флажок менял, менеджер памяти на свой с критическими секциями заменял, но всё бестолку рандомно проскакивает ошибка:
malloc: *** error for object 0x1: Non-aligned pointer being freed
*** set a breakpoint in ...
XProger
24.11.2010 17:12:28
Форум: Free Pascal Compiler
Тема: FPC многопоточность и память
Ответы: 3
Просмотры: 3406

Re: FPC многопоточность и память

Стало полегче, но периодически всё равно проскакивают падения с ошибками.
Программа может одновременно работать с десятками потоков каждый из которых выделяет и высвобождает память.
XProger
20.11.2010 05:25:19
Форум: Free Pascal Compiler
Тема: FPC многопоточность и память
Ответы: 3
Просмотры: 3406

FPC многопоточность и память

Потоки создаются при помощи BeginThread, в uses основного dpr модуля объявлены {$IFDEF DARWIN}cthreads, cmem, heaptrc,{/$ENDIF}
Проблема в том, что созданный поток использует и высвобождает память выделенную в основном потоке. В Windows всё работает как часы, в MacOS падает. Какие тонкости менеджера ...
XProger
17.04.2010 16:20:50
Форум: Free Pascal Compiler
Тема: MacOS и размер исполняемого файла
Ответы: 2
Просмотры: 2873

Re: MacOS и размер исполняемого файла

Какая жаль. Спасибо за инфу, буду копать в этом направлении )
XProger
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... а также кучей ...
XProger
01.10.2009 23:08:13
Форум: Free Pascal Compiler
Тема: Перекрёстные ссылки на object
Ответы: 13
Просмотры: 8967

Re: Перекрёстные ссылки на object

carrots, не вписываются в общую эстетику кода )
XProger
01.10.2009 23:00:50
Форум: Free Pascal Compiler
Тема: Перекрёстные ссылки на object
Ответы: 13
Просмотры: 8967

Re: Перекрёстные ссылки на object

carrots, говорю же, не нужны мне классы, оно сейчас на них и реализовано )
XProger
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 )
XProger
01.10.2009 21:14:08
Форум: Free Pascal Compiler
Тема: Перекрёстные ссылки на object
Ответы: 13
Просмотры: 8967

Re: Перекрёстные ссылки на object

Как раз, хочется именно чистых объектов без рюшек классовых )
XProger
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 по ...
XProger
01.10.2009 19:46:24
Форум: Free Pascal Compiler
Тема: Перекрёстные ссылки на object
Ответы: 13
Просмотры: 8967

Re: Перекрёстные ссылки на object

Оно не скомпилируется. FPC и Delphi этого не допускает. Но в Delphi есть record с методами, с которым это прокатит, хочется аналог в FPC найти.
XProger
30.09.2009 09:32:19
Форум: Free Pascal Compiler
Тема: Перекрёстные ссылки на object
Ответы: 13
Просмотры: 8967

Перекрёстные ссылки на object

Имеется желание сделать вот так:

Код: Выделить всё

TXML = object
  Node : TXML;
end;
Очень хотелось бы реализовать это без классов и побочных PXML, которые в objfpc режиме требуют обязательного указания ^ :)
Delphi позволяет творить подобное с record структурами.
Решаема ли задача при таких условиях? )
XProger
17.07.2009 18:39:18
Форум: Free Pascal Compiler
Тема: Индексы методов интерфейса
Ответы: 3
Просмотры: 3161

Re: Индексы методов интерфейса

Дык, не хотелось бы при этом где-то в коде вызывать что-то типа TMyProcedure(IMyInt.VMTable[idx]) :)
XProger
17.07.2009 03:36:07
Форум: Free Pascal Compiler
Тема: Индексы методов интерфейса
Ответы: 3
Просмотры: 3161

Индексы методов интерфейса

Возможно ли каким-нибудь хаком задать индекс метода интерфейса по типу того что делает dispid?
Сама задача: имеется описание интерфейса с доброй сотней методов, а нужна лишь пара из них, и совсем не хочется тянуть за собой описание всего интерфейса :)