User Tools

Site Tools


project:week13

Non-Determinism and Event Driven Programming

Lecture 1

Problem: How else can the event driven programming model be used?

  • Threads can interact with each other in an event driven way
    • wait/notify
  • Natural model for many applications
    • Simulations
    • Banking interactions
    • Online auctions
    • Database transactions
  • Threads can be used to simplify the design of the program
  • For most of these applications, speedup is not the goal, but lower average response time might be

Examples

Lecture 2

Problem: When is non-determinism a good thing?

  • Concurrent programming often creates non-determinism
  • Scheduling is not deterministic, even for the same program
  • Not a problem for many real world problems mentioned in the last lecture
  • Even when there are many correct “answers”, it is important to preserve certain properties
    • Some race conditions are legal, others are not

Examples

Lab

project/week13.txt · Last modified: 2010/05/11 14:49 by jtk