IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 .NET Discussion :

[C#] Créer un service en fond


Sujet :

.NET

  1. #1
    Membre confirmé
    Profil pro
    Developpeur
    Inscrit en
    septembre 2013
    Messages
    230
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Developpeur

    Informations forums :
    Inscription : septembre 2013
    Messages : 230
    Points : 553
    Points
    553
    Par défaut [C#] Créer un service en fond
    Bonjour,

    Excusez moi si le titre n'est pas des plus clairs, mais je ne trouve pas les mots adéquats. Je cherche à faire un service qui fonctionnerait en tâche de fond dans le code. Je m'explique. Mon application envoie des fichiers à un webservice. J'aimerais gérer la réponse du web service en déplaçant le traitement de l'envoi dans un endroit à part indépendant du reste de l'exécution. Tant que l'envoi n'est pas réussi je réessaie ou je log ou autre.

    Pour l'instant les fichiers sont envoyés grâce à une fonction qui retourne le contenu d'une WebResponse. l'inconvénient est que si l'envoi échoue je suis obligé de faire le traitement dans le reste du code en synchrone. J'aimerais donc déplacer ce processus à un autre endroit et qui ne ralentirait le reste de l'exécution. Quand je veux envoyer un fichier je n'aurais qu'à le lui passer et lui déléguer tout le traitement sans ralentir l'exécution du code précédent.

    Il me semblait avoir vu un pattern en particulier qui gérait ce cas de figure mais je ne me souviens plus du nom. Cela remonte à loin

  2. #2
    Max
    Max est déconnecté
    Expert éminent sénior

    Avatar de Max
    Homme Profil pro
    Artisan développeur
    Inscrit en
    mai 2007
    Messages
    2 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Artisan développeur
    Secteur : Industrie

    Informations forums :
    Inscription : mai 2007
    Messages : 2 954
    Points : 15 742
    Points
    15 742
    Par défaut
    Salut.

    Si j'ai bien compris ce que tu cherches à obtenir, un BackgroundWorker devrait convenir : c'est un objet tout prêt qui permet d'exécuter de façon transparente du code dans un thread séparé

  3. #3
    Membre confirmé
    Profil pro
    Developpeur
    Inscrit en
    septembre 2013
    Messages
    230
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Developpeur

    Informations forums :
    Inscription : septembre 2013
    Messages : 230
    Points : 553
    Points
    553
    Par défaut
    Hello Max, merci de ta réponse
    J'ai jeté un oeil dessus et cette classe a l'air intéressante. Néanmoins je souhaiterais plutôt créer un objet complètement déconnecté des traitements. Faire un traitement qui s'exécute en parallèle et qui tournerait durant toute l'instance de mon programme. Pour rebondir sur ton idée cela consisterait en quelque sorte à implémenter ma propre version de BackgroundWorker.

    EDIT : pour faciliter les choses je vais me diriger vers un pattern Singleton. Finalement je ne pense pas avoir besoin de déployer l'artillerie lourde pour ca. En tout cas merci beaucoup Max pour ta réponse, je vais me servir du BackgroundWorker dans une classe custom

Discussions similaires

  1. [Service] Créer un service manuellement
    Par thomas_strass dans le forum Autres Logiciels
    Réponses: 5
    Dernier message: 04/08/2016, 00h05
  2. [Eclipse] créer un service Windows avec Eclipse
    Par tck-lt dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 19/09/2005, 18h28
  3. [Delphi 2005 Personal] Créer un service NT
    Par dorian833 dans le forum EDI
    Réponses: 26
    Dernier message: 29/08/2005, 15h15
  4. Réponses: 3
    Dernier message: 21/09/2003, 16h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo