Thread en C++
Résolu
ben
-
Anni -
Anni -
bonjour à tous
voila, je debute en C++ et j'aimerais savoir comment on fait des thread. La total koi, demarrage, arret , coeur du prog...
merci à tous
ben
voila, je debute en C++ et j'aimerais savoir comment on fait des thread. La total koi, demarrage, arret , coeur du prog...
merci à tous
ben
A voir également:
- Thread en C++
- Compte thread - Accueil - Réseaux sociaux
- Thread instagram c'est quoi - Accueil - Guide réseaux sociaux
- Fausse appli Threads : déjà une imitation frelatée et dangereuse ! - Accueil - Guide arnaque
- Thread - Guide
- Thread application - Télécharger - Réseaux sociaux
7 réponses
Salut Ben
Si t'es sous windows va voir ca :
http://www.alrj.org/docs/systeme/win32thread.pdf
Si tu veux faire du code portable cherche ACE sur le net, c'est une librairie qui enveloppe les appels systemes, y a des classes pour les threads. Par contre elle est un peu encombrante si je me souviens bien.
Si t'es sous windows va voir ca :
http://www.alrj.org/docs/systeme/win32thread.pdf
Si tu veux faire du code portable cherche ACE sur le net, c'est une librairie qui enveloppe les appels systemes, y a des classes pour les threads. Par contre elle est un peu encombrante si je me souviens bien.
Slt nina le thread est tt simplement l'evolution d un processus fork();
il est plus léger donc plus rapide.Le langage C++ reste le même que ce soit sur borland ou sur n'importe quel autre compilo.
pour creer un thread tu dois utiliser la commande pthread_create()
Apres tu doit lui donner un attribut par avec le mot attr*
ensuite tu lui fait faire ce que tu veux avec le code d'instruction traditionnelle en genral on l'utilise pour creer un enssemble de processus tres rapide il sert beaucoup dans la programmation systeme on peut le rencontrer dans la programmation reseau. Si tu veux faire un systeme a temp reel par exemple utilise le thread. (la definition precise du therme thread est lien de connection) apres a toi de jouer
il est plus léger donc plus rapide.Le langage C++ reste le même que ce soit sur borland ou sur n'importe quel autre compilo.
pour creer un thread tu dois utiliser la commande pthread_create()
Apres tu doit lui donner un attribut par avec le mot attr*
ensuite tu lui fait faire ce que tu veux avec le code d'instruction traditionnelle en genral on l'utilise pour creer un enssemble de processus tres rapide il sert beaucoup dans la programmation systeme on peut le rencontrer dans la programmation reseau. Si tu veux faire un systeme a temp reel par exemple utilise le thread. (la definition precise du therme thread est lien de connection) apres a toi de jouer
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
salut tous le monde !Il faut savoir que le C++ est un langage structurale et pas totalement procedural.
Pour le thread tu as la bibliotheque #include <pthread.h> a faire apres tout dépend de ce que tu veut en faire. Si tu veux developper des aplis web je te conseil c# (Csharp).(les pthreads fonctionnent sur touts les types de langage).
Apres pour le C sharp google sera ton meileur ami lol
Pour le thread tu as la bibliotheque #include <pthread.h> a faire apres tout dépend de ce que tu veut en faire. Si tu veux developper des aplis web je te conseil c# (Csharp).(les pthreads fonctionnent sur touts les types de langage).
Apres pour le C sharp google sera ton meileur ami lol
Pour continuer ce vieux sujet xD ; les threads sont comme je le disait des liens
inter processus qu'on utilise dans les processeur et dans les nouveaux systèmes
d'exploitation afin de pouvoir augmenter leurs performances . On peut mettre un résolu sur le sujet
inter processus qu'on utilise dans les processeur et dans les nouveaux systèmes
d'exploitation afin de pouvoir augmenter leurs performances . On peut mettre un résolu sur le sujet
salut a tout
j ai pas compris qu est ce que le tread et cooment lui appliquer en langage c++ builder
comment faire tout ça
merci d'avance
j ai pas compris qu est ce que le tread et cooment lui appliquer en langage c++ builder
comment faire tout ça
merci d'avance
vous pouvez m aidé pr mmon pgm il sexecute mais n affiche rien
voila le code
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<pthread.h>
#include <errno.h>
int fils1[6];
int fils2[6];
int tab[12];
int droit;
int gauche;
int t[10];
void tri( int t[], int gauche, int droit )
{
int i,j ;int pivot,x ;
i=gauche; j=droit; pivot =t[(i+j)/2] ;
do
{
do
{ i=i+1 ;
}
while (t[i] < pivot);
do
{ j=j-1 ;
}
while (t[j] > pivot);
if ( i<=j )
{
x=t[i];
t[i]=t[j];
t[j]=x;
i=i+1 ;
j=j-1 ;
}
}
while (i>j);
if (gauche<j)
{
tri(t,gauche,j) ;
}
if (i<droit)
{
tri(t,i,droit) ;
}
}
genererNombre(int t[]){//10 nbres aleatoires
int i;
for (i=0;i<11;i++){
t[i]=rand()%50;
//printf("num %d = %d\n",i,t[i]);
}
}
void affect_1()
{
int fils1[5];
int i,m=6;
for (i=0;i<m;i++){
fils1[i]=tab[i];
}
}
void affect_2()
{
int fils2 [6];
int i,p=11;
for (i=6;i<p;i++){
fils2[i]=tab[i];
}
}
main(int tab[])
{
pthread_t f1;
pthread_t f2;
genererNombre(tab);
int k,l ;int pivott,x ;
int p,y,i,j,h,g;
gauche=0;
droit=11;
k=gauche; l=droit; pivott =tab[(i+j)/2] ;
do
{
do
{
k=k+1 ;
}
while (tab[k] < pivott);
do
{
l=l-1 ;
}
while (tab[j] > pivott);
if ( k<=l){
x=t[k];
t[k]=t[l];
t[l]=x;
k=k+1 ;
l=l-1 ;
}
}
while (i<j);
if ( pthread_create(&f1,NULL,(void*(*)())affect_1,NULL)==-1)
perror("pb thread_create\n\n");
if (pthread_create(&f2,NULL,(void*(*)())affect_2,NULL)==-1)
perror("pb thread_create\n\n");
tri(fils1,0,j);
tri(fils2,i,11);
pthread_join(f1,NULL);
pthread_join(f2,NULL);
int v;
for (v=0;v<11;v++){
y=tab[v];
printf("l'element a la position",v,tab[v]);
}
}
voila le code
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<pthread.h>
#include <errno.h>
int fils1[6];
int fils2[6];
int tab[12];
int droit;
int gauche;
int t[10];
void tri( int t[], int gauche, int droit )
{
int i,j ;int pivot,x ;
i=gauche; j=droit; pivot =t[(i+j)/2] ;
do
{
do
{ i=i+1 ;
}
while (t[i] < pivot);
do
{ j=j-1 ;
}
while (t[j] > pivot);
if ( i<=j )
{
x=t[i];
t[i]=t[j];
t[j]=x;
i=i+1 ;
j=j-1 ;
}
}
while (i>j);
if (gauche<j)
{
tri(t,gauche,j) ;
}
if (i<droit)
{
tri(t,i,droit) ;
}
}
genererNombre(int t[]){//10 nbres aleatoires
int i;
for (i=0;i<11;i++){
t[i]=rand()%50;
//printf("num %d = %d\n",i,t[i]);
}
}
void affect_1()
{
int fils1[5];
int i,m=6;
for (i=0;i<m;i++){
fils1[i]=tab[i];
}
}
void affect_2()
{
int fils2 [6];
int i,p=11;
for (i=6;i<p;i++){
fils2[i]=tab[i];
}
}
main(int tab[])
{
pthread_t f1;
pthread_t f2;
genererNombre(tab);
int k,l ;int pivott,x ;
int p,y,i,j,h,g;
gauche=0;
droit=11;
k=gauche; l=droit; pivott =tab[(i+j)/2] ;
do
{
do
{
k=k+1 ;
}
while (tab[k] < pivott);
do
{
l=l-1 ;
}
while (tab[j] > pivott);
if ( k<=l){
x=t[k];
t[k]=t[l];
t[l]=x;
k=k+1 ;
l=l-1 ;
}
}
while (i<j);
if ( pthread_create(&f1,NULL,(void*(*)())affect_1,NULL)==-1)
perror("pb thread_create\n\n");
if (pthread_create(&f2,NULL,(void*(*)())affect_2,NULL)==-1)
perror("pb thread_create\n\n");
tri(fils1,0,j);
tri(fils2,i,11);
pthread_join(f1,NULL);
pthread_join(f2,NULL);
int v;
for (v=0;v<11;v++){
y=tab[v];
printf("l'element a la position",v,tab[v]);
}
}