|
Top: Computers: Programming: Threads:
Threads (95)
Categories:
See Also:
Regular Links:
A Thread Performance Comparison 
Compares Windows NT and Solaris on a symmetric multiprocessor machine.
http://www.usenix.org/publications/library/proceedings/usenix-nt98/full_papers/zabatta/zabatta_html/zabatta.html
Apply Critical Sections Consistently 
Critical sections are the One True Tool for guaranteeing mutual exclusion on shared variables. Like most tools, these must be applied consistently, and with the intended meanings.
http://www.ddj.com/cpp/202401098
Await && Locks 
An expressive C++ thread synchronization library.
http://await.sourceforge.net/
Concurrency with Erlang 
To avoid problems with shared state working with multiple threads, Vinoski recommends a programming language like Erlang rather than C++ or Java.
http://dsonline.computer.org/portal/site/dsonline/menuitem.9ed3d9924aeb0dcd82ccc6716bbe36ec/index.jsp?&pName=dso_level1&path=dsonline/2007/10&file=w5tow.xml&xsl=article.xsl&
Concurrent Programming: Principles and Practice 
This book provides an in-depth overview of underlying principles as well as practical techniques that can be used to design concurrent programs. (Greg Andrews)
http://www.aw-bc.com/catalog/academic/product/0,1144,0805300864,00.html
Foundations of Multithreaded, Parallel, and Distributed Programming 
This book teaches the fundamental concepts of multithreaded, parallel and distributed computing. Emphasizes how to solve problems, with correctness the primary concern and performance an important, but secondary, concern. (Gregory R. Andrews)
http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html
Fundamentals of Multithreading 
Technical article, covering Amdahl's Law, latencies and bandwidth, on-chip multiprocessing, Jackson technology, and simultaneous multithreading. (SystemLogic.net)
http://www.slcentral.com/articles/01/6/multithreading/
Generic Synchronization Policies in C++ 
Most uses of synchronization code in multi-threaded applications fall into a small number of high-level “usage patterns”, or what can be called generic synchronization policies (GSPs). This paper illustrates how the use of such GSPs simplify the writi
http://www.ciaranmchale.com/gsp/
Introduction to Priority Inversion 
Gives an introduction to priority inversion and shows a pair of techniques to avoid them.
http://www.embedded.com/story/OEG20020321S0023
It's (Not) All Been Done 
Every decade or so there is a major revolution in the way software is developed. But, unlike the object and web revolutions, the concurrency revolution can be seen coming.
http://www.gotw.ca/publications/guest-ed-200609.htm
Lock-free Interprocess Communication 
Interprocess communication is an essential component of modern software engineering. Often, lock-free IPC is accomplished via special processor commands. This article propose a communication type that requires only atomic writing of processor word from pr
http://www.ddj.com/dept/cpp/189401457
Portable Thread Synchronization using C++ 
Provides example C++ classes implementing a series of synchronization objects useful for building portable (Solaris and Win32) multithreaded applications.
http://www.frostbytes.com/~jimf/papers/c++sync/c++sync.html
Priority Inheritance Protocols 
Use of synchronization mechanisms like semaphores, monitors, and critical regions can lead to uncontrolled priority inversion. [PDF file]
http://www-md.e-technik.uni-rostock.de/ma/gol/rtsys-bib/90-toc-pcp.pdf
Protothreads 
Very lightweight stackless threads; give linear code execution for event-driven systems, designed to use little memory; library is pure C, no platform-specific Assembly; usable with or without OS. Open source, BSD-type license.
http://www.sics.se/~adam/pt/
RT++ 
Higher order threads for C++; tutorial and reference manual.
http://www.risc.uni-linz.ac.at/software/rt++/
Software and the Concurrency Revolution 
Focuses on the implications of concurrency for software and its consequences for both programming languages and programmers. (Herb Sutter and James Larus)
http://acmqueue.com/modules.php?name=Content&pa=showpage&pid=332
State Threads Library 
Small application library for writing fast, highly scalable Internet programs on Unix-like platforms. Open source, MPL or GPL.
http://state-threads.sourceforge.net/
Survey of Threads 
Comparing Solaris, Linux, and Windows NT threads.
http://www.northco.net/chenke/project/project2.html
The Pillars of Concurrency 
This article makes the case that a consistent mental model is needed to talk about concurrency.
http://www.ddj.com/dept/cpp/200001985
The Problem with Threads 
Argues that for concurrent programming to become mainstream, threads must be discarded as a programming model. Nondeterminism should be judiciously and carefully introduced where needed, and it should be explicit in programs.
http://www.computer.org/portal/site/computer/menuitem.5d61c1d591162e4b0ef1bd108bcd45f3/index.jsp?&pName=computer_level1_article&TheCat=1005&path=computer/homepage/0506&file=cover.xml&xsl=article.xsl&
ZThreads 
An advanced object-oriented, cross-platform C++ threading and synchronization library. [GPL]
http://zthread.sourceforge.net/
|
|
Last Updated: 2007-10-16 13:00:43
|