Bryan Olson <[EMAIL PROTECTED]> writes: > Bengt Richter wrote: > > Bryan Olson wrote: > >>For a long time, > >>the most sophisticated software services generally have used > >>multiple lines of execution, and now that's mostly in the form > >>of threads. No one actually disagrees, but they go right on > >>knocking the modern methods. > > I think Mike is asking for references/citations/links to the > > "concurrency systems" and "modern methods" you are talking about ;-) > > (I'd be interested too ;-) > Sure. I tried to be helpful there, but maybe I need to be more > specific. The ref from my previous post, Google-able as "The > C10K problem" is good but now a little dated.
That appears to be a discussion on squeezing the most out of a network server, touching on threading models only so far as to mention what's available for popular languages on some popular server OS's. > System support for threads has advanced far beyond what Mr. Meyer > dealt with in programming the Amiga. I don't think it has - but see below. > In industry, the two major camps are Posix threads, and Microsoft's > Win32 threads (on NT or better). Some commercial Unix vendors have > mature support for Posix threads; on Linux, the NPTL is young but > clearly the way to move forward. I haven't looked at Win32 threading. Maybe it's better than Posix threads. Sure, Posix threads is better than what I dealt with 10 years ago, but there's no way I'd call it "advanced beyond" that model. They aren't even as good as the Python Threading/Queue model. > Java and Ada will wrap the native thread package, which > C(++) offers it directly. Obviously, any good solution will wrap the native threads package. Just like it wraps the I/O package. That doesn't make the native threads package good. You also have to deal with the cost the compiler pays when you implement threading primitives as library calls. I'm surprised the paper didn't mention that problem, as it effects performance so directly. I don't know what Ada offers. Java gives you pseudo-monitors. I'm almost willing to call them "advanced", but they are still don't really help much. There are some good threading models available. Posix threads isn't one of them, nor is Java's "synchronized". <mike -- Mike Meyer <[EMAIL PROTECTED]> http://www.mired.org/home/mwm/ Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information. -- http://mail.python.org/mailman/listinfo/python-list