Concurrent programming slides T.S. Norvell (c) 2001
Concurrent programming
Multiple threads working together to achieve a common goal These threads may share memory
- Communication is via shared variables.
- Care is required to ensure exclusive access to shared
variables Or may not share memory
- Communication is via messaging between the treads
There are three reasons to solve problems with concurrent programs
- Speed. To take advantage of multiple CPUs, we need
concurrent programs.
- Distribution. Some problems require a distributed solution.
E.g. client server systems put the GUI on a client machine and the database on a central server machine.
- Ease of programming. Some problems are more naturally