human
Pourquoi les programmes cessent-ils de répondre ? En général . Ce n'est pas un problème que j'ai ou quoi que ce soit, je veux juste savoir pourquoi cela arrive. Explique comme si j'avais cinq ans.
gpt
' A cessé de répondre ' signifie beaucoup de choses différentes . Les programmes se bloquent et se bloquent parce qu'il y a une sorte d'exception non gérée qui s'est produite. Par exemple, si votre programme attend une entrée alors qu'il attend également de dessiner du texte, et qu'aucun de ceux-ci ne peut terminer parce qu'ils attendent tous les deux l'autre, alors le programme finit par planter. Plus précisément, ne pas répondre est la façon dont votre système d'exploitation dit « J'envoie des messages au programme et je n'obtiens pas la bonne réponse ». Ces messages vont de la saisie au clavier à l'allocation de mémoire pour quelque chose en passant par la réservation de l'accès à un périphérique. Il se passe BEAUCOUP de choses même dans des programmes très basiques s'ils génèrent des fenêtres et ont des menus et ainsi de suite. Le problème est que parfois le système d'exploitation n'attend pas assez longtemps et le programme répondra. Pensez-y comme ça. Vous souhaitez créer une fenêtre . Donc vous envoyez un message au système de fenêtrage en disant 'créez-moi une fenêtre 1024x768'. Le système de fenêtrage renvoie " ok je l'ai créé , voici où le trouver " ( un * pointeur * vers l' objet ) , puis il attend que le programme dise " j'ai compris merci " . Maintenant figurez-vous qu'il fait cela des millions de fois par seconde pour des millions de choses. Si vous exécutez plusieurs programmes à la fois, le programme qui ne répond pas n'obtient peut-être pas assez de temps CPU pour ce qu'il essaie de faire (ou un programme utilise BEAUCOUP plus de puissance de traitement qu'il ne le devrait). Exécuter réellement un programme signifie que vous faites beaucoup de choses différentes. Allouer de la mémoire pour le programme, saisir les cycles du processeur, parler à divers éléments matériels, utiliser diverses fonctionnalités du système d'exploitation pour créer une fenêtre, dessiner du texte, etc. Certaines de ces choses auxquelles nous ne pensons pas , mais quelque chose d' aussi simple que de dessiner des lettres sur l' écran , pixel par pixel , a en fait pas mal de choses à faire .