Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.29;
Скачать: CL | DM;

Вниз

Копирование двух массивов в один   Найти похожие ветки 

 
AlexOld   (2006-01-08 17:02) [0]

Уважаемые мастера! Чтобы сократить время на доступ к жесткому диску при записи цифрового видео (442КБ на кадр), собирался открыть два потока в памяти каждый на 10..20 кадров. В один вводить данные, а другой писать на диск, по очереди, есс-но. Не знаю, насколько эта идея продуктивна, но вот что обнаружилось при попытке простого отображения массива в память:
Код учебной программы
type
 MArray= TMemoryStream;
var
  P: array[0..9] of byte;
  T1: MArray;
  k: Integer;
  HFile: THandle;
begin
  T1:= TMemoryStream.Create;
   HFile := FileCreate("test.dat");
   T1.Clear;
   T1.Seek(0,soFromBeginning);
  for k:=0 to 9 do
   P[k]:= k;
  T1.WriteBuffer(P,SizeOf(P));
     FileWrite(HFile,T1,T1.Size);
   T1.Free;
end;

В полученном файле первые шесть элементов стабильно имеют значения 8, 62, 140, 0, 148, 133, а потом уже идут 0, 1, 2, 3. Не могу разобраться, почему. Пожалуйста, помогите.


 
Anton_K ©   (2006-01-08 17:12) [1]

Так ты ж объект в файл пишешь.


 
AlexOld   (2006-01-08 18:24) [2]

Ну, уважил. А я-то, балда...


 
Zeqfreed ©   (2006-01-08 18:42) [3]

AlexOld   (08.01.06 18:24) [2]
Если Вам не трудно, то прокомментируйте, пожалуйста, каждую строчку Вашего «учебного примера: чего Вы хотели ей добиться и чего хотели добиться этим кодом в общем.



Страницы: 1 вся ветка

Текущий архив: 2006.01.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.051 c
15-1136470151
Desdechado
2006-01-05 17:09
2006.01.29
Что стало с ibase.ru ?


2-1136973884
Nafania
2006-01-11 13:04
2006.01.29
SOS!!!


15-1136873028
Pazitron_Brain
2006-01-10 09:03
2006.01.29
Как создать пользователя не саходя под пользователем?


15-1136826976
Андрей К
2006-01-09 20:16
2006.01.29
Помогите вспомнить игру на денди


3-1132936362
Mmmaloy
2005-11-25 19:32
2006.01.29
ADODataSet.DataSource или как сделать связь один-ко-многим