Greets-Java réduire l'utilisation du processeur
Nous gots quelques cinglés dans le travail qui aiment utiliser
while(true) { //Code }
dans leur code. Comme vous pouvez l'imaginer, cela maximise le processeur. Est-ce que quelqu'un sait comment réduire l'utilisation du processeur afin que d'autres personnes puissent également utiliser le serveur.
Le code lui-même ne fait qu'interroger constamment sur Internet les mises à jour sur les sites. Par conséquent, j'imagine qu'une petite méthode de sommeil réduirait considérablement l'utilisation du processeur.
Aussi toute la manipulation est en cours dans les objets String (Java) quelqu'un sait combien de StringBuilders réduirait l'overhead par?
Merci pour tous les pointeurs
'while (true)' est simplement un idiome qui dit «fais ceci pour toujours». En soi, cela ne fait rien; le code qui s'y trouve est ce qui consomme les cycles du processeur. Si le code à l'intérieur fait des demandes de réseau, alors il abandonnera son timelice en faisant ainsi, ainsi d'autres utilisateurs obtiendront le leur; un 'sleep()' ne devrait pas affecter de façon significative le débit global du serveur (bien que ce soit une bonne chose pour les serveurs qui sont touchés par le programme). Enfin, 'StringBuilder' peut (ou plus probablement) ne pas améliorer les performances. Mais c'est pourquoi les profileurs existent: ils peuvent vous dire ce qui prend le plus de temps dans le programme. – kdgregory
Comme toujours, exécutez un profileur pour identifier l'emplacement du processeur. Ensuite, utilisez ces données pour battre le développeur responsable sur la tête. –
Quel système d'exploitation? –