|
Тема
|
Imam "nqkakuv" problem
|
|
Автор |
Waz Gaa (_) |
Публикувано | 08.10.02 22:51 |
|
Znachi polzvam s memory mapping, za da uskorq rabotata s edin fail. No ima nqkakuv tech (v 1 red kod), koito ne moga da si ovbqsnq. Moje bi problema e drugade, ne znam, no se nadqvam nqkoi da pomogne.
var
PData: PChar;
procedure Load(AFileName: string);
begin
CreateMapping(AFileName, PData); //CreateMapping mi dava pointer kum mapping-a
end;
procedure Unload;
begin
UnmapViewOfFile(PData); //neshto takova beshe za osvobojdavane na mapping-a
end;
function ReadData(const APos, ALenght: Integer): string;
begin
SetLength(Result, ALength);
Move((PData + APos)^, Result[1 ], ALength); //ei tuka ima iztichane
end;
Pri 40 000 posledovatelni prochitaniq ostavat nqkude 6MB v pametta. Vsushtnost az obhojdam celiq fail (toi e kum 6MB) i moje bi pri chetene vinagi ostava prochetenoto v pametta zadelena za moq proces, ne sum siguren tochno
Ako ne znaete tova e edin ot bugovete v moq rechnik, nadqvam se posledniq (ili pone posledniq seriozen )
by Waz Gaa
| |
Тема
|
Re: Imam "nqkakuv" problem
[re: Waz Gaa]
|
|
Автор |
Hateras (чакащ) |
Публикувано | 09.10.02 16:39 |
|
TFileStream не ти ли върши работа /като скорост/?
--------------------------------------
Започва Път от моят праг...
| |
|
Mi MemMap mislq, che e nai-dobro. Mai bqh po edno vreme sus streams, no vidqh, che ima razlika, ne sum absoliutno siguren. Kato moga shte proverq, no i predpochitam MemMap, taka che se nadqvam nqkoi da pomogne.
by Waz Gaa
| |
Тема
|
Re: Imam "nqkakuv" problem
[re: Waz Gaa]
|
|
Автор | Rincewind (Нерегистриран) |
Публикувано | 15.10.02 13:23 |
|
Da nqma neshto obshto s tova che Result[0] e pyrviqt simvol?
| |
Тема
|
Re: Imam "nqkakuv" problem
[re: Rincewind]
|
|
Автор |
ess (...и бира чадо!) |
Публикувано | 15.10.02 15:04 |
|
Вече стана дума за това, че типа string в последните 32 битови Delphi-та е динамичен и по-голям от 255 байта. Нещо повече, ако напишеш Result[ 0 ], още компилатора дава следната грешка:
Element 0 inaccessible - use 'Length' or 'SetLength'
Четете, бе хора!
---
Не е важно да си добър, важното е да си ман-и-як!
| |
|
|
|
|