begin process at 2008 07 06 18:53:46
1 205 719 membres
282 nouveaux aujourd'hui
14 119 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

VISTA - TIMER RESOLUTION ET CPU CYCLE


Information sur la source

Catégorie :Système Source .NET ( DotNet ) Classé sous : NtQueryTimerResolution, cycle, cpu, timer, resolution Niveau : Débutant Date de création : 02/01/2008 Date de mise à jour : 02/01/2008 22:48:04 Vu / téléchargé: 2 734 / 72

Note :
Aucune note

Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note


Description

Vista propose de nouvelles Api qui vons nous permettres d'avoir des infos sur le Timer Resolution et sur les cycles CPU. Et bien c'est exactement ce que cette demo va traiter :)

Doc sur le timer resolution (api non documentée):
http://technet.microsoft.com/en-us/sysinternals/bb897569.aspx

Voir cet article de Mark Russinovich sur ces nouveautées:
http://www.microsoft.com/technet/technetmag/issues/2007/02/VistaKernel/default.aspx?loc=fr

Ps: Il est conseillé de lire ces articles pour une meilleure compréhension des Api traitées dans cette démo.
Ps2: Et de voir ce que Vista à sous le capot en ce qui concerne les nouveautées de son noyau.

Source

  • Public Shared Sub GetTimerResolution(ByRef MinRes As Long, ByRef MaxRes As Long, ByRef ActualRes As Long)
  • Dim lMin As Long = 0
  • Dim lMax As Long = 0
  • Dim lActual As Long = 0
  • Dim pLib As IntPtr = NativeMethods.LoadLibrary("ntdll.dll")
  • If pLib <> IntPtr.Zero Then
  • Dim pProc As IntPtr = NativeMethods.GetProcAddress(pLib, "NtQueryTimerResolution")
  • If pProc <> IntPtr.Zero Then
  • Dim del As DelNtQueryTimerRes = Marshal.GetDelegateForFunctionPointer(pProc, GetType(DelNtQueryTimerRes))
  • Dim iret As UInteger = del.Invoke(lMin, lMax, lActual)
  • End If
  • End If
  • MinRes = lMin
  • MaxRes = lMax
  • ActualRes = lActual
  • End Sub
    Public Shared Sub GetTimerResolution(ByRef MinRes As Long, ByRef MaxRes As Long, ByRef ActualRes As Long)

        Dim lMin As Long = 0
        Dim lMax As Long = 0
        Dim lActual As Long = 0

        Dim pLib As IntPtr = NativeMethods.LoadLibrary("ntdll.dll")
        If pLib <> IntPtr.Zero Then

            Dim pProc As IntPtr = NativeMethods.GetProcAddress(pLib, "NtQueryTimerResolution")
            If pProc <> IntPtr.Zero Then

                Dim del As DelNtQueryTimerRes = Marshal.GetDelegateForFunctionPointer(pProc, GetType(DelNtQueryTimerRes))

                Dim iret As UInteger = del.Invoke(lMin, lMax, lActual)

            End If

        End If

        MinRes = lMin
        MaxRes = lMax
        ActualRes = lActual

    End Sub

Conclusion

Bon apprentissage :)
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

02 janvier 2008 22:46:01 :
ras
02 janvier 2008 22:48:04 :
zip
    Aucun commentaire pour le moment.

Ajouter un commentaire

Discussions en rapport avec ce code source

Pub



Appels d'offres

WEB DESIGN
Budget : 1 000€
Plugin Dialer outlook
Budget : 2 000€
Travail graphique- ill...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Boutique

Boutique de goodies CodeS-SourceS