Re: Object-oriented multithreading
Joe Seigh wrote:
James Hopkin wrote:
Alan McKenney wrote:
If by "full memory synchronization" you mean all writes
by all threads, that is one solution to the problem.
But it does not scale well to large numbers of processors,
since each mutex lock or unlock requires all CPUs to
wait until the whole memory system settles down.
Threads don't scale well to a large number of processors.
http://www.eecs.berkeley.edu/Pubs/TechRpts/2006/EECS-2006-1.pdf
Threads don't scale well to a large number of programmers. :)
The same could be said of C++ if you don't hire programmers
who actually know how to programm in C++ well.
Actually, you can get pretty good results even if only a small
minority of the programmers are "C++ experts" or "threading
experts". You do need someone on the project to define the
ground rules, and create a framework, and good management to
ensure that the framework is used and the ground rules obeyed,
but I've seen one large, multithreaded project that ran
flawlessly, even though only about five of the fifety some
programmers really understood threading.
(I wouldn't go so far as to say that this technique would work
for all applications, but it seems applicable to typical clients
and servers in the business world, where most of the programmers
are concerned with application domain business logic, and only a
very few with the framework which ensures transactional
integrity, thread safety, and the other technical services.)
--
James Kanze GABI Software
Conseils en informatique orient?e objet/
Beratung in objektorientierter Datenverarbeitung
9 place S?mard, 78210 St.-Cyr-l'?cole, France, +33 (0)1 30 23 00 34
[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]