Потоци, токови, ТСтреам у Делфима

Шта је ток? ТСтреам?

Ток је оно што му име говори: проточна „река података“. Ток има почетак, крај и увек сте негде између ове две тачке.

Користећи Делфи ТСтреам објекти из којих можете читати или их писати на разне врсте медија за похрану, као што су дисковне датотеке, динамичка меморија и тако даље.

Које податке може пренос садржати?

Ток може садржати све што желите, редоследом који желите. У примјеру пројекта који прати овај чланак, за једноставност се користе записи фиксне величине, али у ток можете уписати било који микс података промјењиве величине. Имајте на уму да сте ви одговорни за домаћинство. Ни на који начин се Делпхи не може "сјетити" какви се подаци налазе у току или којим редослиједом!

Стреамс Версус Арраис

Низ има низ фиксних величина које морају бити познате током компајлирања. Ок, можете користити динамичке низове.

С друге стране, ток може нарасти до величине доступне меморије која је на данашњим системима знатно велика, без икаквих обавеза „домаћинства“.

Ток се не може индексирати, као што то низ може. Али као што ћете видети испод, „ходање“ низводно и низводно је веома лако.

instagram viewer

Струје се могу сачувати / учитати у / из датотека у једној једноставној операцији.

Ароме струја

ТСтреам је основна (апстрактна) класа типа за токове објеката. Бити апстрактан значи да се ТСтреам никада не би требао користити као такав, већ само у његовим потомцима. За стриминг било које врсте информација одаберите класу потомака у складу са специфичним потребама и подацима за складиштење. На пример:

  • ТФилеСтреам (за рад са датотекама)
  • ТМемориСтреам (за рад са меморијским пуфером)
  • ТСтрингСтреам (за манипулацију низовима у меморији)
  • ТБлобСтреам (за рад са БЛОБ пољима)
  • ТВинСоцкетСтреам (за читање и писање преко утичнице)
  • ТОлеСтреам (за коришћење ЦОМ интерфејса за читање и писање)

Као што ћете видети, ТмемориСтреам и ТФилеСтреам су невероватно заменљиви и компатибилни.

Преузмите огледни пројекат!

instagram story viewer