Форум: "Прочее";
Текущий архив: 2007.04.22;
Скачать: [xml.tar.bz2];
Внизчто быстрее работает? Найти похожие ветки
← →
Альберт © (2007-03-22 23:50) [0]сохраняю в файл данные hrgn, а потом загружаю и применяю. может стоит сразу в память грузануть hrgn? что быстрее?
← →
Prohodil Mimo © (2007-03-22 23:58) [1]неужели ты думаешь, что работа с диском осуществляется быстрее, чем работа с памятью?
← →
Альберт © (2007-03-23 00:06) [2]выпил пива)) гипотеза такая возникла)) ах, хорошо)
← →
Альберт © (2007-03-23 00:07) [3]спасибо)
← →
MBo © (2007-03-23 06:36) [4]hrgn - это просто одно число, дескриптор региона, так что сохранять его в файл нет смысла
← →
homm © (2007-03-23 10:01) [5]> hrgn - это просто одно число, дескриптор региона, так что
> сохранять его в файл нет смысла
дак вроде-же
> сохраняю в файл данные hrgn
кстати, как ты их достаещь?
← →
REA (2007-03-23 10:05) [6]GetRegionData поди
← →
MBo © (2007-03-23 10:15) [7]>homm
Далее автор спрашивает
>может стоит сразу в память грузануть hrgn?
← →
homm © (2007-03-23 10:31) [8]Удалено модератором
← →
homm © (2007-03-23 10:35) [9]Если такой буквоед, то hrgn - тип данных, его вообше никуда грузить нельзя.
← →
homm © (2007-03-23 12:52) [10]> [8] homm © (23.03.07 10:31) после модерации
> Далее автор спрашивает
> >может стоит сразу в память грузануть hrgn?
Ну и???? Вы же написали "так что сохранять его в файл нет смысла".
← →
Альберт © (2007-03-23 21:53) [11]procedure SaveRegion (FileName: string);
var
s: TStream;
size: cardinal;
data: pointer;
begin
s := TFileStream.Create (FileName, fmCreate);
try
size := GetRegionData (fRgn, SizeOf (RGNDATA), nil);
data := GlobalAllocPtr(GPTR, size);
try
GetRegionData(fRgn, size, data);
s.Write(data^, size);
finally
GlobalFreePtr(data);
end;
finally
s.Free;
end;
end;
function LoadRegion (FileName: string): hRGN;
var
data: PRgnData;
s: TStream;
begin
s := TFileStream.Create (FileName, fmOpenRead);
try
data := GlobalAllocPtr(GPTR, s.size);
try
s.Read(data^, s.Size);
Result := ExtCreateRegion(nil, s.Size, data^);
finally
GlobalFreePtr(data);
end;
finally
s.Free;
end;
end;
← →
Альберт © (2007-03-23 21:59) [12]
> Если такой буквоед, то hrgn - тип данных, его вообше никуда
> грузить нельзя.
не надо делать поспешных выводов
← →
Игорь Шевченко © (2007-03-23 22:41) [13]Альберт © (23.03.07 21:59) [12]
hrgn - это вообще-то handle. И ни сохранять его, ни тем более грузить никак нельзя.
← →
Альберт © (2007-03-23 22:46) [14]смотрите на fRgn и GetRegionData
← →
Игорь Шевченко © (2007-03-23 22:50) [15]Альберт © (23.03.07 22:46) [14]
Ты свой первый вопрос растолкуй, а то я читаю и не могу понять, что же ты хочешь сделать
← →
Альберт © (2007-03-23 22:57) [16]вопрос в том, что оптимальнее использовать:
за один раз загружать данные из файлов или в случае анимации постоя грузить с жесткого диска. возможен и смежный вариант. кэшировать кадры "наперед"
← →
homm © (2007-03-23 23:03) [17]> [13] Игорь Шевченко © (23.03.07 22:41)
> hrgn - это вообще-то handle. И ни сохранять его, ни тем
> более грузить никак нельзя.
Игорь, и Вы туда-же? Ну где же автор говорит о сохранении хэндла?
Вопрос понятно дело - ламерский, что быстрее память или диск. Ясно что память, но это никак не означает что вопрос задан неверно, и ответ был дан в [1], а дальше пошло буквоедство.
← →
Игорь Шевченко © (2007-03-23 23:10) [18]homm © (23.03.07 23:03) [17]
> Игорь, и Вы туда-же?
> сохраняю в файл данные hrgn, а потом загружаю и применяю.
> может стоит сразу в память грузануть hrgn? что быстрее?
И как на такой вопрос отвечать, спрашивается ?
Почему-то когда вопрос в подобном виду задают компилятору он честно ругается, потому что не соответствует грамматике или семантике его, компилятора, языка.
Так и тут - семантика вопроса явно нарушена.
← →
Альберт © (2007-03-23 23:11) [19]homm © , лучше мысли свои напишите сюда http://delphimaster.net/view/4-1173536327/
← →
Альберт © (2007-03-23 23:13) [20]ребят, извиняюсь за неконкретику
← →
Игорь Шевченко © (2007-03-23 23:14) [21]Альберт © (23.03.07 22:57) [16]
> вопрос в том, что оптимальнее использовать:
>
> за один раз загружать данные из файлов или в случае анимации
> постоя грузить с жесткого диска. возможен и смежный вариант.
> кэшировать кадры "наперед"
Все зависит от компромисса между требуемой скоростью и объемом памяти, необходимой для хранения данных. Если известно, то данных не слишком много, то лучше сразу загрузить, если много - тогда изобретать, иначе своппинг может ухудшить производительность.
А кстати, почему не хочешь метафайлами воспользоваться - уже готовый механизм, не надо мудрить с GetRegionData
← →
homm © (2007-03-23 23:15) [22]> [16] Альберт © (23.03.07 22:57)
Ну вот, оказываеся вопрос действительно задан коряво :)
Мое мнение, если данных до 1 метра, то не о чем беспокоится, грузи сразу, если больше - можно подумать о последовательном чтении, но в любом случае винда с кэшированием справится сама.
А это все про браузер реализация? Решил регион флешки просчитать, и применять к окну? :)
← →
Альберт © (2007-03-23 23:18) [23]ага)
← →
homm © (2007-03-23 23:21) [24]Весьма оригинальное решение, и, учитывая оригинальность здачи, возможно самое простое. При условии что в флешке нет полу-прозрачных областей.
← →
Альберт © (2007-03-23 23:22) [25]
> почему не хочешь метафайлами воспользоваться
да не работал таким образом.. к сожалению..
← →
Альберт © (2007-03-23 23:24) [26]
> Весьма оригинальное решение, и, учитывая оригинальность
> здачи, возможно самое простое. При условии что в флешке
> нет полу-прозрачных областей
ну так я с такой штукой и реализовываю..
← →
Альберт © (2007-03-23 23:28) [27]типа альтернатива вистовским виджетам
← →
Альберт © (2007-03-23 23:30) [28]полупрозрачная флешка тоже будет как окошко
← →
homm © (2007-03-23 23:34) [29]И как сие с регионами реализуется? Имхо - никак.
← →
Альберт © (2007-03-23 23:44) [30]ну это сначала так кажется.. никто не отменял вырезание окошка..
всю прозрачно реализую ручками, и регионы тоже в теме оказались
← →
homm © (2007-03-23 23:52) [31]> типа альтернатива вистовским виджетам
Ну дак может и пойти по ее пути? DirectX в помошь. Чего такого монстра городить, все равно не все окна будут с твоим корректно работать. (Виндовые контролы любят рисоватся не через WM_PAIINT а через GetDC(0)).
← →
Альберт © (2007-03-24 00:12) [32]да я предложу технологию, а под нее дизайнеры будут верстать.
а по пути ее не стоит идти.. политика мелкософта вообще не нравится. все тормознее и тормознее. так что на винапи ручками делаю, быстро, маленький размерчик, поменьше ком. WM_PAINT не используется у меня вообще
← →
Альберт © (2007-03-24 00:15) [33]ну кроме как в самом браузере
← →
homm © (2007-03-24 00:16) [34]> так что на винапи ручками делаю, быстро, маленький размерчик
Через регионы? С ручной прорисовкой полу-прозрачных областей?
> все тормознее и тормознее.
DirectX все тормозне???
← →
Игорь Шевченко © (2007-03-24 00:19) [35]
> политика мелкософта вообще не нравится. все тормознее и
> тормознее. так что на винапи ручками делаю, быстро, маленький
> размерчик, поменьше ком. WM_PAINT не используется у меня
> вообще
Удачи
← →
Альберт © (2007-03-24 00:31) [36]содежимое виджета собирается стандартными средствами, которые доступны каждому, кто занимается дизайном, которые вполне стабильно работают. ну а морочиться директ икс, это точно мало к чему нормальному приведет:писать свой парсер придется. поддержку плагинов. ломать голову с стандартизацией.. ну это нереальная задача..
← →
homm © (2007-03-24 02:02) [37]> ну а морочиться директ икс, это точно мало к чему нормальному
> приведет:писать свой парсер придется. поддержку плагинов.
> ломать голову с стандартизацией.. ну это нереальная задача..
Да все проще. Создай окно, импортируй OCX, подсовывай канву сурфэйса, и вперед.
← →
Gero © (2007-03-24 13:22) [38]asm быстрее, пиши на нем.
← →
homm © (2007-03-24 22:05) [39]> asm быстрее, пиши на нем.
asm быстрее жесткого диска и оперативной памяти? ;)
← →
Gero © (2007-03-25 03:03) [40]> [39] homm © (24.03.07 22:05)
> asm быстрее жесткого диска и оперативной памяти? ;)
Бывали случаи!
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2007.04.22;
Скачать: [xml.tar.bz2];
Память: 0.55 MB
Время: 0.045 c