Newsgroup: it.comp.lang.c++
Titolo: Thread

Ciao a tutti. Esiste una libreria che implementi strutture per la
multiprogrammazione in C++?
Grazie in anticipo Davide

 multiprogrammazione in C++?
Cosa intendi con multiprogrammazione ?
--
Andrea Ferro
---------
Brainbench C++ Master. Scored higher than 97% of previous takers
Scores: Overall 4.46, Conceptual 5.0, Problem-Solving 5.0
More info 
http://www.brainbench.com/transcript.jsp?pid=2522556

Cosa intendi con multiprogrammazione ?
Facciamo finta di non capire ?
Tiro ad indovinare basandomi sull'oggetto del messaggio...
Stara' mica parlando di thread ?

multiprogrammazione in C++?
Non a livello standard.
Devi appoggiarti alle estensioni del tuo compilatore.
Con C++ Builder, per esempio, viene sfruttata la classe VCL TThread
che incapsula le API Windows per la creazione e la gestione dei
thread.

 multiprogrammazione in C++?
Se intendi un framework che ti consenta di effettuare la programmazione
concorrente in C++ come si conviene (vedi SCOOP di Meyer) e usi Linux, c'è
l'ottimo "DisC++" ( Distributed C++ ) sviluppato nella mia università.
Ti consente di creare degli oggetti attivi con le opportune sincronizzazioni
in cui ogni metodo può essere invocato in modo sincrono, asincrono o
asincrono differito. Inoltre ad ogni metodo puoi associare delle guardie (ad
esempio: se stai realizzando un buffer sincronizzato puoi dire: non eseguire
il metodo get() finchè nel buffer non c'è almeno un elemento) e delle regole
per abilitare o disabilitare un metodo secondo determinati criteri.
La sintassi di invocazione resta praticamente identica a quella del C++
normale.
Per ora esiste solo la versione per LINUX.
L'indirizzo è:
http://aot.ce.unipr.it/projects/disc++/
ma visto che non sono sicuro che il download funzioni, lo mando per e-mail a
chiunque interessi.
Daniele.

 Stara' mica parlando di thread ?
Bhe', la coppia subject+body del
messaggio da' adito a dubbi legittimi:
1) in realta' intende thread, allora non si dice
    "multi programmazione" ma "programmazione concorrente".
2) in realta' intende suddividere il carico tra macchine diverse,
    allora il programma è "distribuito" ed i thread non c'entrano
    (tranne che a livello di singola macchina)

    allora il programma è "distribuito" ed i thread non c'entrano
Da dove lo capisci che intende suddividere il carico tra macchine
diverse ?

 diverse ?
A me la parola "multiprogrammazione"
fa venire in mente anche questo..

 fa venire in mente anche questo..
Ehm.. voglio specificare:
non l'ho mai sentita in ambito informatico,
ma puo' darsi che sia io l'ignorante in questo caso.
Quindi, per quella che è la mia competenza,
la parola multiprogrammazione non significa nulla.
Non significando nulla, puo' darsi che chi
ha postato intendesse la programmazione distribuita,
ed avesse usato quindi erroneamente il termine "thread"...
ecco, questo è il ragionamento che ho fatto.
Contorto, ma i post li interpreto "alla lettera":
chi scrive deve essere chiaro e specificare tutto lo specificabile.

chi scrive deve essere chiaro e specificare tutto lo specificabile.
Si', ma, senza offesa, cerchiamo di farci meno seghe mentali.
Voglio essere forzatamente pignolo.
A me sembra ovvio che la parola "multiprogrammazione" associata alla
parola "thread" produca "multithread".
Dai, cerchiamo di essere piu' vicini ai problemi delle persone...