Magazine Internet

[C#] Thread-Safe facile avec SynchronizationContext

Publié le 03 octobre 2008 par Jeremy.jeanson

Voici un petit code qui explique simplement l'utilisation du SynchronizationContext pour obtenir un code Thread-safe.

using System;
using System.Threading;

namespace WindowsFormsApplication1
{
    /// <summary>
    /// Classe métier qui a besoin d'avoir des appels avec SynchronizationContext
    /// </summary>
    public class Class1
    {
        private SynchronizationContext _context;

        /// <summary>
        /// Constructeur
        /// </summary>
        public Class1()
        {
            // Mémorisation du context
            _context = SynchronizationContext.Current;
        }

        /// <summary>
        /// Lancement de la méthode hors context
        /// </summary>
        public void DoWork()
        {
            // Test si on a un context (juste par prudence)
            if (_context != null)
            {
                // Appel de la méthode via le context
                _context.Post(Work, null);
            }
        }

        /// <summary>
        /// Méthode que l'on souhaite proteger via SynchronizationContext
        /// </summary>
        /// <param name="data"></param>
        private void Work(Object data)
        {
            // Faire le job
        }
    }
}

Vous pourriez être intéressé par :

Ajouter un commentaire Signaler un abus Imprimer cet article Partager sur Facebook
Retour à La Une de Logo Paperblog

Ces articles peuvent vous intéresser :

  • [Films] Les jeux au cinéma notamment le poker

    Nombreux sont les films qui offrent une place aux jeux dans leur histoire, le poker en fait partie. J’ai retenu dans ma liste des oeuvres... Lire la suite

    Le 19 novembre 2012 par   3moopydelfy
    BD, CINÉMA, CULTURE, INTERNET, MÉDIAS
  • Manager un collaborateur anxieux

    Comment accompagner un collaborateur miné par une anxiété qui compromet sa performance individuelle et celle de son équipe ? La peur du danger L’état anxieux... Lire la suite

    Le 28 août 2012 par   Cspformation
    FORMATION, INTERNET, WEB2.0
  • Le portail des Entreprises de Belgique est de retour !

    Et avec lui, son cortège de faux-semblants entretenus savamment. La lettre d'introduction précise bien qu'il s'agit d'une vérification de données... Lire la suite

    Le 28 août 2012 par   Easyconcept
    INTERNET
  • Sécurité des piscines, ergonomie et cycle d’utilisation en design

    En réaction aux nombreux reportages (1) sur les cas de noyades d’enfants en raison de la non sécurité de certaines piscines et installations environnantes, une... Lire la suite

    Le 19 juillet 2012 par   L
    EMARKETING, INTERNET
  • Retouches 2.0

    Conjoncture astrale ou opération “préparation rentrée 2013 avant de partir en vacances”? On ne sait pas – mais toujours est-il qu’en ce moment, les réseaux... Lire la suite

    Le 30 juin 2012 par   Pileoustrass
    INTERNET, SOCIÉTÉ, WEB2.0
  • Nscripts – package de scripts pour Nautilus

    Le gestionnaire de fichiers Nautilus dispose de fonctions limitées en terme de scripts. Les scripts suivants peuvent être copiés dans le répertoire de scripts d... Lire la suite

    Le 29 octobre 2009 par   Dictege
    HIGH TECH, INFORMATIQUE, INTERNET
  • IL FATTO fait l'événement !

    Arrivée fracassante d'un nouveau quotidien dans la presse italienne, qui se classe d'emblée dans le Top 10 de la PQI : IL FATTO QUOTIDIANO. LE FAIT QUOTIDIEN.... Lire la suite

    Le 28 octobre 2009 par   Jean-Marie Le Ray
    ENTREPRISE, FINANCES, INTERNET

LES COMMENTAIRES (1)

Par coloniedevacances
posté le 20 janvier à 13:55
Signaler un abus

Salut, J'arrive tous juste sur ce forum qui m'a l'air interressant. habitué des forum et gros contributeur, je suis interressé par votre concept. A bientot sur le forum

Ajouter un commentaire

A propos de l’auteur

Jeremy.jeanson 4 votes

Dossier Paperblog