Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
MSI FORGE GK600 TKL WIRELESS: switch lineari hot-swap, tripla connettività, display LCD e 5 strati di fonoassorbimento. Ottima in gaming, a 79,99 euro
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici
DJI porta un importante aggiornamento alla sua linea di gimbal camera tascabili con Osmo Pocket 4: sensore CMOS da 1 pollice rinnovato, gamma dinamica a 14 stop, profilo colore D-Log a 10 bit, slow motion a 4K/240fps e 107 GB di archiviazione integrata. Un prodotto pensato per i creator avanzati, ma che convince anche per l'uso quotidiano
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Il primo headset open-back della linea INZONE arriva a 200 euro con driver derivati dalle cuffie da studio MDR-MV1 e un peso record di soli 199 grammi
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-05-2011, 19:02   #1
Emalele1688
Member
 
Iscritto dal: Oct 2009
Messaggi: 157
[C++] Thread Linux

Salve a tutti

Mi sono imbattuto in un programma in c++ che fa uso di threads per gestire i diversi flussi, e fin ora sto usando POSIX Threads (che chiaramente è in C, no C++) ...
Volevo sapere qual'è una buona interfaccia per gestire i threads in C++ nei sistemi UNIX (particolare linux)...

Grazie a tutti in anticipo ...
Emalele1688 è offline   Rispondi citando il messaggio o parte di esso
Old 14-05-2011, 17:03   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
La libreria boost ha una buona gestione dei thread (e di molto altro). Se non sbaglio quella parte entrerà nel prossimo standard C++.
A seconda del tipo di progetto potrebbe essere plausibile l'uso delle librerie QT, ovviamente se potessero essere usate anche per altre cose.
In alternativa puoi incapsulare i pthread in una classe C++ da cui puoi derivare i tuoi thread. Un esempio: http://www.linuxselfhelp.com/HOWTO/C...-HOWTO-18.html
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 15-05-2011, 09:34   #3
Emalele1688
Member
 
Iscritto dal: Oct 2009
Messaggi: 157
Molte grazie della risposta cionci .... Inizierò dal framework boost, poiché sembra che il futuro del C++ stia puntando li, e cerco sempre di evitare di mischiare codice C con codice C++ ...
Emalele1688 è offline   Rispondi citando il messaggio o parte di esso
Old 15-05-2011, 09:43   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Emalele1688 Guarda i messaggi
Molte grazie della risposta cionci .... Inizierò dal framework boost, poiché sembra che il futuro del C++ stia puntando li, e cerco sempre di evitare di mischiare codice C con codice C++ ...
Dipende da quello che devi fare. Se dovessi limitare la roba da portarmi dietro incapsulerei le chiamate alla libpthread. Tra l'altro mischiare codice C e C++ in questo modo è tutt'altro che sporco, anzi è un ottimo indizio di qualità del programmatore
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 15-05-2011, 11:28   #5
Tommo
Senior Member
 
L'Avatar di Tommo
 
Iscritto dal: Feb 2006
Messaggi: 1304
Mah, se il futuro di C++ punta li, il mio punta da tutt'altra parte
Boost è troppo ingombrante per essere utile, e non mi piace per tutta una serie di altri motivi.

Comunque, potresti dare un'occhiata a http://pocoproject.org/: offre un pò di tutto (thread,sockets,files,etc) come Boost, ma è una sola .dll grande solo 1 mb, quasi non usa metaprogramming, e personalmente mi sembra molto più sana di mente
__________________
*ToMmO*

devlog | twitter
Tommo è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2011, 11:14   #6
Emalele1688
Member
 
Iscritto dal: Oct 2009
Messaggi: 157
Ottime risposte da tutti e due Effettivamente l'uso di librerie esterne, come boost e POCO C++ implicano delle dipendenze aggiuntive, e nel mio caso l'uso della libpthread è ottimo...
Ma in caso di applicazioni Multithreading e multi piattaforma?? Boost da quel che so sono multi piattaforma...

ps: Un complimento a Tommo per avermi fatto conoscere POCO C++, sembra promettente, la devo solo sperimentare il Linux...
Emalele1688 è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2011, 12:59   #7
marco.r
Senior Member
 
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
Quote:
Originariamente inviato da Tommo Guarda i messaggi
Mah, se il futuro di C++ punta li, il mio punta da tutt'altra parte
Boost è troppo ingombrante per essere utile, e non mi piace per tutta una serie di altri motivi.

Comunque, potresti dare un'occhiata a http://pocoproject.org/: offre un pò di tutto (thread,sockets,files,etc) come Boost, ma è una sola .dll grande solo 1 mb, quasi non usa metaprogramming, e personalmente mi sembra molto più sana di mente
Nel mio sistema libboost_thread.so e' grande 85 kb. Non ho presente in windows, ma non penso debba essere molto piu' grande.
Boost nel complesso e' grande, ma puoi linkare solo quello che ti serve.
E se ci sono parti troppo complesse e templatizzate (mi viene in mente la parte sui grafi) non sei obbligato ad usarle.
Il fatto che siano ampiamente usate poi da un minimo di garanzia in piu' riguardo la qualita' del codice.
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele
marco.r è offline   Rispondi citando il messaggio o parte di esso
Old 21-05-2011, 09:03   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Emalele1688 Guarda i messaggi
Ma in caso di applicazioni Multithreading e multi piattaforma?? Boost da quel che so sono multi
Le Boost sono molti piattaforma, così come le QT. La libpthread ha una portabilità nettamente minore. Ad esempio su Windows va solo con porting del gcc, mentre le altre due funzionano tranquillamente anche su altri compilatori.
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless Tastiera gaming MSI GK600 TKL: switch hot-swap, ...
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici DJI Osmo Pocket 4: la gimbal camera tascabile cr...
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori Sony INZONE H6 Air: il primo headset open-back d...
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA Nutanix cambia pelle: dall’iperconvergenza alla ...
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta Recensione Xiaomi Pad 8 Pro: potenza bruta e Hyp...
iPhone 16e per la prima volta a meno di ...
Stop Killing Games: Ross Scott convince ...
Annunciata la tuta di volo di Vast che s...
Vast presenta il nuovo Large Docking Ada...
Una denuncia getta ombre sulle batterie ...
DJI Avata 2 Fly Smart Combo a 526€: il d...
Alla guida della nuova auto elettrica ci...
GeForce RTX 3060 12 GB a giugno di nuovo...
Apple Music sarà sponsor ufficiale di Po...
The Mandalorian & Grogu: trailer fin...
Fedeltà record: Apple blinda gli utenti,...
Volkswagen ID.3 Neo: fino a 630 km di au...
GPU-Z mette i dati personali a rischio? ...
La PS6 potrebbe essere retrocompatibile ...
Amazfit Cheetah 2 Pro arriva in Italia: ...
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: 08:36.


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