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

Python Discussion :

Téléchargement en tache de fond


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 573
    Par défaut Téléchargement en tache de fond
    Bonjour,

    Je ne sais pas si le titre est tres clair, donc je m'explique.
    Dans mon programme, je lance des téléchargements et pour le moment, je dois attendre la fin des téléchargement pour qu'il passe à la suite.
    J'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    urllib.request.urlretrieve (mon_url, mon_fichier)
    Savez-vous s'il est possible de lancer ces téléchargements un peu comme une tache de fond, en parallèle de l'exécution des autres taches ?
    Sachant que le téléchargement d'une centaine de fichier prend environ 1m30 se serait pas mal de parraléliser tout ca ;-)

    Merci pour votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    Slt !

    En faisant du multithreading tout simplement, nan ?
    Ou du multiprocessing.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    >>> import threading
    >>> import time
    >>> def say_hello():
    	global T
    	while T < 5:
    		print("hello")
    		time.sleep(2)
     
     
    >>> def display_timer(t):
    	global T
    	while 1:
    		T = round((time.time()-t),1)
    		print("Timer :",T)
    		time.sleep(0.1)
     
     
    >>> def run():
    	threading.Thread(target=display_timer, args = (time.time(),)).start()
    	threading.Thread(target=say_hello).start()
     
     
    >>> run()
    Timer :
    >>> hello 
    0.0
    Timer : 0.2
    Timer : 0.3
    Timer : 0.4
    Timer : 0.6
    Timer : 0.7
    Timer : 0.8
    Timer : 0.9
    Timer : 1.0
    Timer : 1.2
    Timer : 1.3
    Timer : 1.4
    Timer : 1.5
    Timer : 1.6
    Timer : 1.7
    Timer : 1.9
    Timer : 2.0
    helloTimer :
     2.1
    Timer : 2.2
    Timer : 2.3
    Timer : 2.5
    Timer : 2.6
    Timer : 2.7
    Timer : 2.8
    Timer : 2.9
    Timer : 3.1
    Timer : 3.2
    Timer : 3.3
    Timer : 3.4
    Timer : 3.5
    Timer : 3.7
    Timer : 3.8
    Timer : 3.9
    Timer : 4.0
    helloTimer :
     4.1
    Timer : 4.3
    Timer : 4.4
    Timer : 4.5
    Timer : 4.6
    Timer : 4.7
    Timer : 4.9
    Timer : 5.0
    Timer : 5.1
    Timer : 5.2

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2010
    Messages
    573
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 573
    Par défaut
    Mais c'est génial ca ... je ne savais pas que Python faisait egalement du multithreading.

    Merci beaucoup, je vais investiguer cette piste ;-)

Discussions similaires

  1. Téléchargement fichier en tache de fond
    Par dbzzzde dans le forum Access
    Réponses: 1
    Dernier message: 17/12/2011, 15h50
  2. Réponses: 3
    Dernier message: 07/06/2005, 14h44
  3. [application tache de fond] lancer une application
    Par jean-jacques varvenne dans le forum Général Python
    Réponses: 5
    Dernier message: 25/03/2005, 11h13
  4. executer une page en tache de fond
    Par Invité(e) dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 22/01/2005, 16h23
  5. [Question] serveur en tache de fond
    Par Nicaisse dans le forum Réseau
    Réponses: 11
    Dernier message: 14/08/2003, 10h47

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