Torna indietro   Hardware Upgrade Forum > Software > Programmazione

realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1
realme e Aston Martin Aramco F1 Team si sono (ri)unite dando alla vita un flagship con chip Snapdragon 8 Elite Gen 5 e design esclusivo ispirato alle monoposto di Formula 1. La Dream Edition introduce la nuova colorazione Lime Essence abbinata al tradizionale Aston Martin Racing Green, decorazioni intercambiabili personalizzate e una confezione a tema F1, intorno a uno smartphone dall'ottima dotazione tecnica con batteria da 7000mAh ricaricabile a 120W e isola fotografica intercambiabile
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
Abbiamo partecipato all'OVHcloud Summit 2025, conferenza annuale in cui l'azienda francese presenta le sue ultime novità. Abbiamo parlato di cloud pubblico e privato, d'intelligenza artificiale, di computer quantistici e di sovranità. Che forse, però, dovremmo chiamare solo "sicurezza"
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a
Abbiamo potuto mettere le mani in anteprima sul nuovo monitor MSI dedicato ai giocatori: un mostro che adotta un pannello QD-OLED da 26,5 pollici con risoluzione 2560 x 1440 pixel, frequenza di aggiornamento fino a 500 Hz e tempo di risposta di 0,03 ms GtG
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-01-2011, 13:14   #1
Rsk
Senior Member
 
L'Avatar di Rsk
 
Iscritto dal: Dec 2006
Messaggi: 314
[C - lpthread] Uccidere e ricreare thread

Ragazzi.. ho un programma strutturato nel modo seguente.
Il main crea vari thread

Codice:
do{

    // inizializzo le strutture dati da passare ai thread
   for(i=0; i< N; i++)
   {
     producer[i].x = i ;
   }
	 //creazione dei thread
   for(i=0; i<N; i++)
	{
 	pthread_create(&elencoId[i], NULL, &producer, &producer[i]);
    	}

	//creazione thread producer2
	pthread_create(&elencoId[4], NULL, &producer2, &producer2);

	//avvio controllo
	check();
		
    //attendo che i thread finiscano
	for(i=0; i<N+1; i++) pthread_join(elencoId[i], NULL); 

}
while(condition);
Dove i producer si occupano di inviare a check dei dati e check scrive su schermo.
Check legge i dati dalla memoria condivisa in cui scrivono i producer.

Ora.. non so come ritornare al main quando i thread finiscono il loro compito e riavviare i thread.

Potete aiutarmi?
__________________
Athlon64 x2 5600 - AsRock ALiveNF5eSata2+ - kingston 2GB ddr2 800 - GeForce 8800gts 320MB
Rsk è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2011, 20:55   #2
maulattu
Senior Member
 
L'Avatar di maulattu
 
Iscritto dal: Mar 2005
Città: ~
Messaggi: 740
così a naso:
Codice:
pthread_create(&elencoId[4], NULL, &producer2, &producer2);
sicuro di ciò?
crei un thread che esegue il metodo "producer2" e gli pass come argomento il puntatore della funzione stessa...

EDIT
altra cosa:
Codice:
elencoId[4]
ti conviene fare
Codice:
elencoId[i]
visto che all'ultimo giro del for precedente, i sarà uguale a N.
Mi raccomando, verifica che elencoId[.] sia di dimensione opportuna...
__________________
Ciao ciao cagnolino Billy
MacMini late 2009, 2.53GHz, 4GB ram, 320GB hard disk, Snow Leopard 10.8.2 - iPod Nano 6th gen.
XBOX Live GamerTag: InsaneMau
maulattu è offline   Rispondi citando il messaggio o parte di esso
Old 23-01-2011, 21:20   #3
Rsk
Senior Member
 
L'Avatar di Rsk
 
Iscritto dal: Dec 2006
Messaggi: 314
Quote:
Originariamente inviato da maulattu Guarda i messaggi
così a naso:
Codice:
pthread_create(&elencoId[4], NULL, &producer2, &producer2);
sicuro di ciò?
crei un thread che esegue il metodo "producer2" e gli pass come argomento il puntatore della funzione stessa...

EDIT
altra cosa:
Codice:
elencoId[4]
ti conviene fare
Codice:
elencoId[i]
visto che all'ultimo giro del for precedente, i sarà uguale a N.
Mi raccomando, verifica che elencoId[.] sia di dimensione opportuna...
In realtà il codice non è così.. ma la struttura si.. creo n producer1 e un producer 2.. e avvio la funzione check

il problema è che, una volta creati i thread, non so come riportare il controllo al main una volta che tutti i thread hanno finito il loro compito.. e da li ricrearli
__________________
Athlon64 x2 5600 - AsRock ALiveNF5eSata2+ - kingston 2GB ddr2 800 - GeForce 8800gts 320MB
Rsk è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


realme GT 8 Pro Dream Edition: prestazioni da flagship e anima racing da F1 realme GT 8 Pro Dream Edition: prestazioni da fl...
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum OVHcloud Summit 2025: le novità del cloud...
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI C...
DJI Neo 2 in prova: il drone da 160 grammi guadagna il gimbal e molto altro DJI Neo 2 in prova: il drone da 160 grammi guada...
L'IA "seria" di Appian è diversa: inserita nei processi e rispetta dati e persone L'IA "seria" di Appian è divers...
Caldaie a gas, colpo di scena: l'UE valu...
Altro che 'scandalo De Martino', in Core...
Meta leggerà i tuoi messaggi dal ...
OpenAI entra in Thrive Holdings: nasce u...
Paramount: nuovi film di Sonic e Tartaru...
EU AI Cloud, il cloud sovrano di SAP per...
God of War: la serie TV entra in pre-pro...
Stampante HP in super offerta: la multif...
Maxi offerta su Roborock S8 MaxV Ultra: ...
Ron Gilbert, il creatore di Monkey Islan...
AMD, aumento dei prezzi per i processori...
I migliori regali di Natale a meno di 50...
Sorprese post Black Friday: questi TV 4K...
NVIDIA perde quota, AMD e Intel guadagna...
Il cloud ibrido al centro delle strategi...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:49.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v