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

MS SQL Server Discussion :

[DEBUTANT]Procédure stocké non bloquante


Sujet :

MS SQL Server

  1. #1
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 213
    Points : 102
    Points
    102
    Par défaut [DEBUTANT]Procédure stocké non bloquante
    Salut à tous,

    Je fais un application qui se connecte à une base de données MS-SQL, j'ai certains traitements qui prenne beaucoup de temps et qui sont assez lourd, si je met mes différentes requêtes dans mon application, mon application se fige jusqu'à la fin du traitement. J'ai fais quelques procédures stockées pour remplacé ces traitements de mon application, sur le fond c'est bien, ça va un peu plus vite, par contre c'est toujours bloquant pour mon application, y a t il un moyen de lancer ces traitements via un application sans que cela la bloque.

    D'avance merci de votre aide

  2. #2
    Rédacteur
    Avatar de JauB
    Homme Profil pro
    Freelancer
    Inscrit en
    Octobre 2005
    Messages
    1 792
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Maroc

    Informations professionnelles :
    Activité : Freelancer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 792
    Points : 2 914
    Points
    2 914
    Par défaut
    tu as le :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Application.DoEvents()
    qui permet de donner la main à l'application, c'est une sorte de Threading.
    il y a autre manière qui repose sur les API mais
    te fera l'affaire!

  3. #3
    En attente de confirmation mail Avatar de Ensiaste2006
    Inscrit en
    Juillet 2006
    Messages
    125
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Juillet 2006
    Messages : 125
    Points : 142
    Points
    142
    Par défaut
    je pense que tripper.dim n'a pas encore annocé le langage avec lequel il a fait son applicatif..
    je te conseil de postuler ton code dans un des forums qui traite le langage utiiisé

  4. #4
    Membre régulier
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 213
    Points : 102
    Points
    102
    Par défaut
    N'est-il pas possible de le déclarer dans la procédure stockée ?

    Du style je lance une procédure stockée qui en démarre une autre sans que cette autre soit bloquante pour la première.

    Encore merci de votre aide


  5. #5
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Août 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 730
    Points : 923
    Points
    923
    Par défaut
    comme te l'a dit Jaub il te faut faire du multiThread

    l'api windows a une fonction CreateProcess(..)
    qui, suivie de WaitForSingleObject te permet de définir si tu attends que ton thread soit terminé avant de fermer le thread mais qui permet d'en lancer un autre avant qu'il soit fini

    ce qui te donnerai du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    CreateProcess(.. hprocess1,proc1..) 
    CreateProcess(.. hprocess2,proc2..) 
    CreateProcess(.. hprocess3,proc3..) 
    CreateProcess(.. hprocess4,proc4..) 
     
     WaitForSingleObject( pi.hProcess1, INFINITE );
    CloseHandle( pi.hProcess1 );
     WaitForSingleObject( pi.hProcess2, INFINITE );
    CloseHandle( pi.hProcess2 );
     WaitForSingleObject( pi.hProcess3, INFINITE );
    CloseHandle( pi.hProcess3 );
     WaitForSingleObject( pi.hProcess4, INFINITE );
    CloseHandle( pi.hProcess4 );
    quelques explications:
    http://msdn2.microsoft.com/en-us/library/ms682425.aspx
    http://msdn2.microsoft.com/en-us/library/ms682512.aspx

Discussions similaires

  1. [DEBUTANT]Procédure stockée Traitement sur une boucle de requete
    Par tripper.dim dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 21/06/2007, 17h24
  2. [DEBUTANT]Procédure stockée avec plusieurs requetes
    Par tripper.dim dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 19/06/2007, 18h49
  3. Réponses: 3
    Dernier message: 09/06/2007, 14h19
  4. [DEBUTANT] procédure stockées dans select
    Par wrapx dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 08/06/2006, 20h08
  5. [debutant] Procédure stockée
    Par Vincent BONNAL dans le forum SQL
    Réponses: 14
    Dernier message: 15/03/2004, 13h11

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