Benchmark disku

C# .NET Práce se soubory Zdrojákoviště Benchmark disku

DiskBenchmark otestuje rýchlosť čítania a zápisu na nami zvolené zariadenie. Program umožňuje nastaviť počet pokusov pre zvýšenie presnosti.

Zdrojový kód

Testovacia logika je v triede DiskTester, oddelená od GUI. Testovanie disku prebieha samozrejme na pozadí cez BackgroundWorker, aby okno programu zostalo responzívne. Problém pri práci s IO je ten, že štandardne sa využívajú systémové vyrovnávajúce pamäte. Na vypnutie bufferovania a cachovania slúži príznak

const FileOptions FileFlagNoBuffering = (FileOptions) 0x20000000;

ktorý sa potom využíva pri otváraní súboru

using (FileStream fs = new FileStream(path, FileMode.OpenOrCreate,
       FileAccess.Write, FileShare.None, 8, FileFlagNoBuffering))
{
        sw.Start();  // Stopwatch
        fs.Write(values, 0, Size);
        sw.Stop();
}

Výsledok merania program vráti delegát TestCompleted­Delegate(float read, float write), ktorý vráti priemerný počet milisekúnd stráveným čítaním a zápisom. Relatívny progres je reportovaný prostredníctvom IProgress<float>, ktorý priamo mení hodnotu ProgressBar-u.


Galerie

Program byl vytvořen v roce 2015.

 

Stáhnout

Staženo 40x (22.89 kB)
Aplikace je včetně zdrojových kódů v jazyce C#

 

  Aktivity (1)

Program pro vás napsal spixy16
Avatar

Jak se ti líbí článek?
Celkem (7 hlasů) :
4.714294.714294.714294.714294.71429


 



 

 

Komentáře

Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zatím nikdo nevložil komentář - buď první!