c# timer - Pourquoi il existe 5 versions de classes de minuterie dans.NET?




tick elapsed (2)

Timers.Timer génère un événement après un intervalle défini, avec une option pour générer des événements récurrents. MSDN

Windows.Forms.Timer est un contrôle pour winforms.

Web.UI.Timer effectue des publications de page Web asynchrones ou synchrones à un intervalle défini. MSDN

Threading.Timer est le minuteur pour les rappels. Crée un nouveau thread pour travailler. Servi par les threads du pool de threads. MSDN

Ainsi, ces minuteries ont des objectifs différents, ils sont également desservis par différents outils.

Pourquoi existe-t-il cinq classes de minuteur dans le framework .Net, à savoir:

  1. System.Timers.Timer
  2. System.Threading.Timer
  3. System.Windows.Forms.Timer
  4. System.Web.UI.Timer
  5. System.Windows.Threading.DispatcherTimer

Pourquoi existe-t-il plusieurs versions de la classe Timer? Et quelles sont les différences entre eux?


CurrentCulture est la représentation .NET des paramètres régionaux par défaut du système. Ceci contrôle le format par défaut des nombres et des dates et autres.

CurrentUICulture réfère à la langue de l'interface utilisateur par défaut, un paramètre introduit dans Windows 2000. Cela concerne principalement la partie localisation / traduction de l'interface utilisateur de votre application.

Quelles que soient les options régionales configurées pour le système, les valeurs "Actuelles" de votre application .NET seront utilisées.

Souvent, ils sont tous les deux les mêmes. Mais sur mon système ils seraient différents: je préfère mes numéros et dates au format allemand, donc la CurrentCulture serait allemande, mais je préfère aussi toutes mes applications en anglais, donc CurrentUICulture serait anglais.

Il y a un bon article sur le sujet: Tout trier: Pourquoi nous avons à la fois CurrentCulture et CurrentUICulture





c# .net timer