• [^] # Re: Queue

    Posté par . En réponse au message Récupérer une variable retournée par un thread. Évalué à 1.

    Avec les queues ça marche :

    ################################
    import threading
    import Queue
    queue = Queue.Queue(-1)
    def affiche():
    --queue.put("ble")
    a = threading.Thread(target=affiche,args=())
    a.start()
    while queue.qsize() == 0:
    --pass
    print queue.get()
    ################################

    Mais pourquoi ça ne marche pas avec une simple variable ? :

    ################################
    result = None
    def affiche():
    --result = "ble"
    a = threading.Thread(target=affiche,args=())
    a.start()
    while result == None:
    --pass
    print result
    ################################
    ce code tourne à l'infinie. La variable result n'est jamais modifiée. Pourquoi ?

    En tout cas, merci du tuyau