CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[Python] Apprendre à utiliser les threads correctement

HQNB
HQNB
Niveau 4
25 octobre 2017 à 22:34:27

Bonsoir tout le monde. Je fais un peu de programmation en Python. Ce que je trouve plutot cool vu la vitesse de dev sur ce langage. Mais je suis confronté à quelques soucis.

En effet, je bloque sur la partie parallélisation. Je vois pas comment utilisé le threading correctement. Vous auriez de bonnes refs pour comprendre et savoir utiliser cet aspect là ? Je me vois mal sauter cette partie vu son importance :hap:

Et question à part : des gens ont déjà utilisé l'API facebook ? Je cherche à schedule des posts d'une page FB en grosse quantité

Merci d'avance :ok:

Message édité le 25 octobre 2017 à 22:36:46 par HQNB
airv_
airv_
Niveau 52
25 octobre 2017 à 23:39:36

Je suis pas un expert en la matière mais je crois que le threading en Python est un peu chelou, a la base, ca consiste a "partager" les différentes tâches a faire aux différents coeurs du processeur. Mais je crois qu'en python, ca ne fait pas vraiment ca, ca créer des threads virtuels, ou un truc du genre.

Enfin bref, voila quelques leins :

- https://openclassrooms.com/courses/apprenez-a-programmer-en-python/la-programmation-parallele-avec-threading : explique très brièvement le truc

- https://docs.python.org/3/library/threading.html : la documentation officielle, avec toutes les commandes

Une des notion les plus importantes du threading, c'est le lock ; en gros, imaginons qu'une tache A et une tache B vont être effectuées, et que la tache B utilise des variables qui sont modifiées dans la tâche A. Comme avec les threads, les 2 tâches vont être effectuées "simultanément", le lock permet "de dire a la tâche B"d'utiliser tout au long de son exécution les variables comme elles étaient avant d'être modifiées par la tâche A. Pour cela, il faut stocker en mémoire "l'état du programme" (les valeurs des variables, etc ..) ce qui peut être couteux en performance, et au final rendre le threading inutile. Enfin bref j'explique très mal, jte laisse voir les liens :ok:

Exacompta
Exacompta
Niveau 10
26 octobre 2017 à 11:53:10

Salut, je suis intéressé aussi par le thread c'est as quelque chose que je trouve simple et à travers le tuto d'openclassroom je trouve pas ça bien expliqué. SI vous avez d'autres liens je suis preneur :)

godrik
godrik
Niveau 30
26 octobre 2017 à 13:15:43

Je ne connais pas l'etat du calcul parallele en python. Mais en pratique, peut de gens utilise les lobs de threads directement.
En pratique on utilise plus souvent des abstractions de plus haut niveau comme les boucles for parallel, les decompositions en tache recursives (ou pas recursive) et des modeles producteur-consomateur.
Les threads sont souvent juste trop bas niveau pour etre directement utile.

Si tu veux apprendre a faire des theeads, un exemple simple classique est de calculer pi en parallele par la methode de monte carlo.

Exacompta
Exacompta
Niveau 10
26 octobre 2017 à 13:45:26

Le 26 octobre 2017 à 13:15:43 Godrik a écrit :
Je ne connais pas l'etat du calcul parallele en python. Mais en pratique, peut de gens utilise les lobs de threads directement.
En pratique on utilise plus souvent des abstractions de plus haut niveau comme les boucles for parallel, les decompositions en tache recursives (ou pas recursive) et des modeles producteur-consomateur.
Les threads sont souvent juste trop bas niveau pour etre directement utile.

Si tu veux apprendre a faire des theeads, un exemple simple classique est de calculer pi en parallele par la methode de monte carlo.

Salut, merci de tes réponses. Tu as des livres/liens à conseiller qui parlent de ces principes là ? Ca m'interesse beaucoup :oui:

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment