Lecture Notes for Concurrent Programming

14 August 2003 - Polyphonic Concurrency Control Mechanisms


Outline


Review


Mutual Exclusion


Monitors


Call-Based Concurrency Specification


Path Expressions


Path-Expression Syntax


Path-Expression Concurrency Control


Semaphore Path Expressions


Path-Expression Evaluation


Path-Expression Properties


Path Expressions vs. Condition Variables


Improving Path Expressions


Polyphonic Synchronization


Polyphonic Syntax


Polyphonic Readers-Writers

class ReadersWriters

  void  writerEnter() &
  async Idle() { }

  void writerExit()
    Idle()

  void  readerEnter() &
  async idle()
    readerCount(1)

  void  readerEnter() &
  async readerCount(int n) 
    readersCount(n + 1)

  void  readerExit() &
  async readerCount(int n)
    if n = 1
      Idle()
    else
      readersCount(n - 1)

  ReadersWriters
    idle()


Implementation Details


Points to Remember


This page last modified on 14 August 2003.