home *** CD-ROM | disk | FTP | other *** search
/ ftp.ee.pdx.edu / 2014.02.ftp.ee.pdx.edu.tar / ftp.ee.pdx.edu / pub / users / Harry / Blitz / OSProject / p2 / Synch.h < prev    next >
Text File  |  2007-09-19  |  603b  |  37 lines

  1. header Synch
  2.  
  3.   uses Thread
  4.  
  5.   class Semaphore
  6.     superclass Object
  7.     fields
  8.       count: int
  9.       waitingThreads: List [Thread]
  10.     methods
  11.       Init (initialCount: int)
  12.       Down ()
  13.       Up ()
  14.   endClass
  15.  
  16.   class Mutex
  17.     superclass Object
  18.     methods
  19.       Init ()
  20.       Lock ()
  21.       Unlock ()
  22.       IsHeldByCurrentThread () returns bool
  23.   endClass
  24.  
  25.   class Condition
  26.     superclass Object
  27.     fields
  28.       waitingThreads: List [Thread]
  29.     methods
  30.       Init ()
  31.       Wait (mutex: ptr to Mutex)
  32.       Signal (mutex: ptr to Mutex)
  33.       Broadcast (mutex: ptr to Mutex)
  34.   endClass
  35.  
  36. endHeader
  37.