2010-01-29 4 views

Répondre

3

Je suggère d'écrire un programme qui s'exécute en continu (assurez-vous qu'il bloque de temps en temps), puis de le mettre simplement à une faible priorité. Le planificateur OS (Windows/* nix) devrait gérer le reste automatiquement.

1

Vous pouvez utiliser des cycles CPU supplémentaires en écrivant un programme qui s'exécute en arrière-plan.

Vous pouvez vérifier l'utilisation du processeur pour savoir quand l'ordinateur est inactif (mais ce n'est pas forcément une bonne idée), ou vous pouvez écouter l'activité souris/clavier.

Pour vérifier l'utilisation du processeur en C#, utilisez le code suivant:

float cpuUsage; //Between 0 and 100 
using (var cpu = new PerformanceCounter("Processor", "% Processor Time", "_Total")) { 
    cpu.NextValue(); //First call gives wrong values 
    cpuUsage = cpu.NextValue(); 
} 

Pour vérifier activité du clavier ou de la souris, vous devez utiliser un crochet clavier/souris; Voir here pour les instructions.

+1

Je déconseille de vérifier l'utilisation du processeur, car cette interrogation prend elle-même le processeur. –

1

Écrire une application. Définir ses priorités de thread à "arrière-plan". Job done;)

Questions connexes