vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Harddisk Write/Read Geschwindigkeit ermitteln 
Autor: Flaute-1A
Datum: 16.03.05 11:55

Hi

Nach langem studieren habe ich eine Möglichkeit gefunden, diese Speeds zu ermitteln.

Public Function GetDriveSpeedWrite() As Long
 
    Dim Drive As String
    Dim T As Long
    Dim StartTime As Double
    Dim WriteSpeed As Long
 
    Drive = Right(Environ(7), 2) & "\"
 
    StartTime = Timer
 
    Open Drive & "DriveSpeedTest.txt" For Output As #1
        For T = 1 To 512000
            Print #1, "X"
        Next T
    Close #1
 
 
    WriteSpeed = Format((1 / ((Timer - StartTime) * 2)) * 1024000, "0")
 
    If WriteSpeed > 10485760 Then Exit Function
    If WriteSpeed > 1048576 Then
        frmMain.lblDiskWrite.Caption = "mb"
        WriteSpeed = Round(Int(WriteSpeed / 104857.6), 0)
    ElseIf WriteSpeed > 1024 Then
        If WriteSpeed > 102400 Then
            frmMain.lblDiskWrite.Caption = "kb"
            WriteSpeed = Round(Int(WriteSpeed / 10240), 0)
        Else
            frmMain.lblDiskWrite.Caption = "kb"
            WriteSpeed = Round(Int(WriteSpeed / 1024), 0)
        End If
    Else
        frmMain.lblDiskWrite.Caption = "by"
        WriteSpeed = Round(Int(WriteSpeed / 10.24), 0)
    End If
 
    GetDriveSpeedWrite = WriteSpeed
 
End Function
 
Public Function GetDriveSpeedRead() As Long
 
    Dim Drive As String
    Dim T As Long
    Dim StartTime As Double
    Dim ReadSpeed As Long
 
    Drive = Right(Environ(7), 2) & "\"
 
    StartTime = Timer
 
    Open Drive & "DriveSpeedTest.txt" For Input As #1
        Do While Not EOF(1)
            Line Input #1, tmpData
        Loop
    Close #1
 
    ReadSpeed = Format((1 / ((Timer - StartTime) * 2)) * 1024000, "0")
 
    Kill Drive & "DriveSpeedTest.txt"
 
    If ReadSpeed > 10485760 Then Exit Function
    If ReadSpeed > 1048576 Then
        frmMain.lblDiskRead.Caption = "mb"
        ReadSpeed = Round(Int(ReadSpeed / 104857.6), 0)
    ElseIf ReadSpeed > 1024 Then
        If ReadSpeed > 102400 Then
            frmMain.lblDiskRead.Caption = "kb"
            ReadSpeed = Round(Int(ReadSpeed / 10240), 0)
        Else
            frmMain.lblDiskRead.Caption = "kb"
            ReadSpeed = Round(Int(WReadSpeed / 1024), 0)
        End If
    Else
        frmMain.lblDiskRead.Caption = "by"
        ReadSpeed = Round(Int(ReadSpeed / 10.24), 0)
    End If
 
    GetDriveSpeedRead = ReadSpeed
 
End Function
Jedoch verursacht diese Prüfung für ein/zwei Sekunden 100% Cpu Auslastung. Wie könnte ich diese verhindern?

Lg
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Harddisk Write/Read Geschwindigkeit ermitteln869Flaute-1A16.03.05 11:55
Re: Harddisk Write/Read Geschwindigkeit ermitteln452Wolfgang16.03.05 14:07
Re: Harddisk Write/Read Geschwindigkeit ermitteln553ModeratorDieter16.03.05 14:43
Re: Harddisk Write/Read Geschwindigkeit ermitteln452Flaute-1A16.03.05 18:35
Re: Harddisk Write/Read Geschwindigkeit ermitteln495ModeratorDieter16.03.05 21:06
Re: Harddisk Write/Read Geschwindigkeit ermitteln462Flaute-1A16.03.05 21:07
Re: Harddisk Write/Read Geschwindigkeit ermitteln446ModeratorDieter16.03.05 21:13
Re: Harddisk Write/Read Geschwindigkeit ermitteln461[JoE]18.03.05 12:39
Re: Harddisk Write/Read Geschwindigkeit ermitteln451ModeratorDieter18.03.05 12:46
Re: Harddisk Write/Read Geschwindigkeit ermitteln456Flaute-1A18.03.05 19:01

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel