History
C. A. R. Hoare and Per Brinch Hansen developed the idea of monitors around 1972, based on earlier ideas of their own and of E. W. Dijkstra. Brinch Hansen was the first to implement monitors. Hoare developed the theoretical framework and demonstrated their equivalence to semaphores.
Monitors were soon used to structure inter-process communication in the Solo operating system.
Programming languages that have supported monitors include
- Ada since Ada 95 (as protected objects)
- C# (and other languages that use the .NET Framework)
- Concurrent Euclid
- Concurrent Pascal
- D
- Delphi (Delphi 2009 and above, via TObject.Monitor)
- Java (via the wait and notify methods)
- Mesa
- Modula-3
- Python (via threading.Condition object)
- Ruby
- Squeak Smalltalk
- Turing, Turing+, and Object-Oriented Turing
- μC++
A number of libraries have been written that allow monitors to be constructed in languages that do not support them natively. When library calls are used, it is up to the programmer to explicitly mark the start and end of code executed with mutual exclusion. Pthreads is one such library.
Read more about this topic: Monitor (synchronization)
Famous quotes containing the word history:
“The history of his present majesty, is a history of unremitting injuries and usurpations ... all of which have in direct object the establishment of an absolute tyranny over these states. To prove this, let facts be submitted to a candid world, for the truth of which we pledge a faith yet unsullied by falsehood.”
—Thomas Jefferson (17431826)
“Social history might be defined negatively as the history of a people with the politics left out.”
—G.M. (George Macaulay)
“[Men say:] Dont you know that we are your natural protectors? But what is a woman afraid of on a lonely road after dark? The bears and wolves are all gone; there is nothing to be afraid of now but our natural protectors.”
—Frances A. Griffin, U.S. suffragist. As quoted in History of Woman Suffrage, vol. 4, ch. 19, by Susan B. Anthony and Ida Husted Harper (1902)